开发语言

Golang能重复利用多核计算能力,提升承载能力,简单易用,内存安全,运行效率高于各种脚本语言

框架比较

  • cellnet是一个组件化、高扩展性、高性能的开源服务器框架
  • Leaf 是一个模块化、多核支持、稳定的开源游戏服务器框架
  • GoWorld一个分布式可扩展、可热更新的游戏服务器框架

特性对比

- cellnet GoWorld leaf
传输协议支持 TCP、UDP、HTTP、WebSocket TCP、KCP、WebSocket TCP、websocket
编码支持 Google Protobuf、json、二进制协议Gryffindor Google Protobuf(未来支持)、 MessagePack protobuf、json
远程过程调用RPC 支持同步、异步RPC 支持 支持
日志管理 支持 支持 支持
热更新   支持
空间和实体   支持(AOI管理多个空间和实体)
分布式   支持 支持
流量压缩与加密   支持(客户端和服务器之间的流量)
支持并发量   一个多核高性能的主机上运行dispatcher可以支持100万以上的同时在线
数据库   MongoDB和Redis MongoDb
定时器     支持

方案选择

由于cellnet架构简洁、组件化、高性能等原因,选择此架构进行二次开发
目标特性

 编码:Google Protobuf 、json
 传输协议支持:http、tcp、websocket
 支持远程过程调用:异步同步
 支持分布式部署
 日志跟踪
 支持MySql、MongoDB