目标: 高性能TCP网络服务器程序
简介: 程序架构采用master-worker模型,并利用libevent网络库来实现one loop per thread(一个事件循环一个线程)的IO模型。
- 支持平台: x86-64 linux
- 开发语言: C++
- 开发平台: CentOS release 6.3
- linux内核版本: 2.6.32-279.el6.x86_64
- gcc 版本: 4.4.6
- libevent版本: 2.0.21
测试结果:
- 对于tcp短连接以简单的请求——回应进行测试,10万个请求,平均响应时间约为16ms。
- 对于tcp长连接,根据业务实时做更新,目前10万级并发连接(加20s心跳),服务端可以轻松应对,资源消耗很小。
参考文章
配和客户端库使用
- RPC_Framework: 基于TCP协议的远程过程调用框架——客户端
-
客户端和服务端均分为业务层,协议层(JSON),网络层(libevent),可以根据自己的业务定制每一层的接口;
-
客户端实现了与服务端的短连接请求,长连接请求,服务端的推送消息;
-
客户端提供跨平台的支持,目前已经经过windows,linux,android,ios的测试;
-