dalonghahaha / Asgard
Licence: mit
Asgarde Framework
Stars: ✭ 138
Projects that are alternatives of or similar to Asgard
Ginrpc
gin auto binding,grpc, and annotated route,gin 注解路由, grpc,自动参数绑定工具
Stars: ✭ 157 (+13.77%)
Mutual labels: grpc, gin
Go Project Sample
Introduce the best practice experience of Go project with a complete project example.通过一个完整的项目示例介绍Go语言项目的最佳实践经验.
Stars: ✭ 344 (+149.28%)
Mutual labels: grpc, gin
Book
《Go 语言编程之旅:一起用 Go 做项目》本书涵盖细分为 5 + 1 板块,分别是命令行、HTTP、RPC、Websocket 应用、进程内缓存以及 Go 语言中的大杀器。
Stars: ✭ 167 (+21.01%)
Mutual labels: grpc, gin
Ultimate Go
This repo contains my notes on working with Go and computer systems.
Stars: ✭ 1,530 (+1008.7%)
Mutual labels: grpc, gin
Go Http Metrics
Go modular http middleware to measure HTTP requests independent of metrics backend (with Prometheus and OpenCensus as backend implementations) and http framework/library
Stars: ✭ 128 (-7.25%)
Mutual labels: gin
Go Proto Gql
Protobuff plugins for generating graphql schema and golang to graphql bindings. Also supports a graphql gateway (Alpha)
Stars: ✭ 127 (-7.97%)
Mutual labels: grpc
Grpcui
An interactive web UI for gRPC, along the lines of postman
Stars: ✭ 2,490 (+1704.35%)
Mutual labels: grpc
Mtproto
Telegram MTProto and its proxy (over gRPC) in Go (golang). API Layer: 71
Stars: ✭ 133 (-3.62%)
Mutual labels: grpc
Almost Famous
🌟 Almost-Famous(成名之路) ——卡牌游戏开源项目,架构使用SpringBoot+Netty+Maven+SpringCloud来搭建多进程分布式框架,包括Cloud、Unique、Login、Game、Match、Battle 等服务。
Stars: ✭ 131 (-5.07%)
Mutual labels: grpc
Abp.grpc
基于 ABP 框架开发的 Grpc 模块,支持 Consul 服务发现与服务注册。Grpc module developed based on ABP framework supports early service discovery and service registration.
Stars: ✭ 134 (-2.9%)
Mutual labels: grpc
Mix
☄️ PHP CLI mode development framework, supports Swoole, WorkerMan, FPM, CLI-Server / PHP 命令行模式开发框架,支持 Swoole、WorkerMan、FPM、CLI-Server
Stars: ✭ 1,753 (+1170.29%)
Mutual labels: grpc
Grpc Spring Boot Starter
Spring Boot starter module for gRPC framework.
Stars: ✭ 1,829 (+1225.36%)
Mutual labels: grpc
Go Grpc
A collection of gRPC and Go examples showcasing features of the framework
Stars: ✭ 127 (-7.97%)
Mutual labels: grpc
Asgard
简介
Asgard是设计用于综合解决常驻进程应用、计划任务、定时任务的分布式作业管理系统。
架构设计
- Asgard系统由web节点、master节点、agent节点组成。
- web节点主要功能包括实例管理、分组管理、作业配置、作业运行状态控制、作业运行状态查看、日志查询
- master节点负责agent节点的状态监测,同时接收并转存agent节点上报的运行时数据
- agent节点接收web节点的指令在相应的服务器中运作相关作业
- master节点和agent节点之间通过grpc协议交换数据
Web界面预览
指令作用
Asgard guard
启动为管理单机系统常驻进程应用守护服务,类似supervisor
Asgard guard status
查看单机常驻进程应用列表
Asgard guard show xxxxxx
查看单机常驻进程应用xxxxxx信息
Asgard cron
启动为管理单机系统的计划任务守护服务,类似crontab
Asgard cron status
查看单机计划任务列表
Asgard cron show xxxxxx
查看单机计划任务xxxxxx信息
Asgard web
启动为web节点
Asgard msater
启动为master节点
Asgard agent
启动为agent节点
Asgard agent status
查看agent节点运行的常驻进程应用、计划任务、定时任务综合信息
部署及配置说明
运行scripts/Asgard.sql初始化mysql数据表。monitors数据表按月分表,格式"monitors_202006",需要提前创建。
初始登录名:admin,初始密码:123456
web节点、master节点、agent节点都需要一个名为app.yaml的配置文件。
默认读取运行目录下名为conf的目录,如果需要指向配置文件的目录可以在启动命令中通过conf参数指定。
启动web节点需要用到web目录中的assets和views两部分静态资源
web节点配置项示例及说明
web:
port: 12345 #web节点监听端口
domain: "asgard.dalong.me" #web节点域名
cookie_salt: "sdswqeqx" #web节点身份验证加密值(必须为8位字符串)
component:
db:
asgard: #mysql数据库配置
host: "127.0.0.1" #mysql数据库地址
port: 3306 #mysql数据库端口
user: "xxxxxx" #mysql数据库用户名
password: "xxxxxx" #mysql数据库密码
database: "Asgard" #mysql数据库库名
redis: #redis配置
asgard:
host: "127.0.0.1" #redis地址
port: 6379 #redis端口号
password: "" #redis密码
db: 0 #redis库索引
log: #日志配置
console: true #是否输出到控制台
level: "debug" #日志级别
dir: "runtime/" #日志存放根目录
单节点master节点配置项示例及说明
master:
port: 9527 #master节点监听端口
component:
db:
asgard: #mysql数据库配置
host: "127.0.0.1" #mysql数据库地址
port: 3306 #mysql数据库端口
user: "xxxxxx" #mysql数据库用户名
password: "xxxxxx" #mysql数据库密码
database: "Asgard" #mysql数据库库名
redis: #redis配置
asgard:
host: "127.0.0.1" #redis地址
port: 6379 #redis端口号
password: "" #redis密码
db: 0 #redis库索引
log: #日志配置
console: true #是否输出到控制台
level: "debug" #日志级别
dir: "runtime/" #日志存放根目录
单节点agent节点配置项示例及说明
agent:
moniter: 10 #监控指标上报周期,单位秒
master:
ip: "127.0.0.1" #master节点地址
port: 9527 #master节点端口
rpc:
ip: "127.0.0.1" #agent节点地址
port: 27149 #agent节点端口
component:
log: #日志配置
console: true #是否输出到控制台
level: "debug" #日志级别
dir: "runtime/" #日志存放根目录
高可用master节点配置项示例及说明
master:
port: 9527 #master节点监听端口
cluster: true #标记启用集群模式
cluster_registry: #etcd集群节点列表
- "127.0.0.1:2379"
cluster_name: "asgard" #集群名称
cluster_id: "master-1" #集群节点ID
cluster_ip: "127.0.0.1" #集群节点IP
component:
db:
asgard: #mysql数据库配置
host: "127.0.0.1" #mysql数据库地址
port: 3306 #mysql数据库端口
user: "xxxxxx" #mysql数据库用户名
password: "xxxxxx" #mysql数据库密码
database: "Asgard" #mysql数据库库名
redis: #redis配置
asgard:
host: "127.0.0.1" #redis地址
port: 6379 #redis端口号
password: "" #redis密码
db: 0 #redis库索引
log: #日志配置
console: true #是否输出到控制台
level: "debug" #日志级别
dir: "runtime/" #日志存放根目录
高可用agent节点配置项示例及说明
agent:
moniter: 10 #监控指标上报周期,单位秒
master:
cluster: true #标记启用集群模式
cluster_registry: #etcd集群节点列表
- "127.0.0.1:2379"
cluster_name: "asgard" #集群名称
rpc:
ip: "127.0.0.1" #agent节点地址
port: 27149 #agent节点端口
component:
log: #日志配置
console: true #是否输出到控制台
level: "debug" #日志级别
dir: "runtime/" #日志存放根目录
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].