mqant
mqant是一款基于Golang语言的简洁,高效,高性能的分布式游戏服务器框架,研发的初衷是要实现一款能支持高并发,高性能,高实时性,的游戏服务器框架,也希望mqant未来能够做即时通讯和物联网方面的应用
为什么要用golang
特性
高性能分布式
支持分布式跟踪系统接口传送门
基于golang协程,开发过程全程做到无callback回调,代码可读性更高
RPC支持本地和远程自动切换
远程RPC使用redis,rabbitmq,未来可以添加更多种类的通信协议
网关采用MQTT协议,无需再开发客户端底层库,直接套用已有的MQTT客户端代码库,可以支持IOS,Android,websocket,PC等多平台通信
默认支持mqtt协议,同时网关也支持开发者自定义的粘包协议
模块
将不断加入更多的模块
依赖项目
go get github.com/gorilla/mux
go get github.com/gorilla/websocket
go get github.com/streadway/amqp
go get github.com/golang/protobuf
go get github.com/golang/net/context
go get github.com/opentracing/basictracer-go
go get github.com/opentracing/opentracing-go
go get github.com/garyburd/redigo
文档
快速上手:
概述
...
演示示例
mqant 项目只包含mqant的代码文件
mqantserver 项目包括了完整的测试demo代码和mqant所依赖的库
如果你是新手可以优先下载mqantserver项目进行试验
框架架构
下一步计划
分布式架构管理模块(Master)
模块发现
模块管理
模块动态添加删除
模块状态监控
新增英文版文档
希望有兴趣的英语好的同学能参与帮忙编写英文版本的文档
【已完成】异常日志监控和汇报
异常日志分类汇总
定时将异常日志发送到Email
定时将异常日志通过webhook发送到团队协作工具中(钉钉,worktile等)
【已完成】rpc添加track分布式跟踪系统的接口Appdash,用Go实现的分布式系统跟踪神器
贡献者
欢迎提供dev分支的pull request
bug请直接通过issue提交
凡提交代码和建议, bug的童鞋, 均会在下列贡献者名单者出现
版本日志
v1.0.0
mqant第一个版本