昨天我把自己的第一个开源项目revolver代码提交到了GitHub上,revolver是一个C++开发的LINUX网络服务框架。这个代码算是我从2012年到现在的积累,开源的目的是希望高手指正问题和分享自己的一些经验,我会持续改进和优化,也希望更多的地方使用revovler。revolver框架除了基础的网络库封装以外,还是实现了网络连接管理、服务单元管理、消息隐射、协议自动化等,可以快速基于它进行业务开发。以下我介绍下revolver的下载、编译和目录结构。
下载:
revolver是通过github进行提交开源的,git url:https://github.com/yuanrongxi/revolver ,可以通过相对应的git命令和工具获取到源程序。
目录:
以上是revolver的目录结构,根目录下包含/cmake /common /daemon /test /protocol_analysis五个目录
cmake 是在LINUX下编译的CMAKE工具脚本,在LINUX下先安装cmake工具。
common 是revolver的核心代码目录,其中包括基础库存revolver工程,可靠UDP(rudp)工程,核心封装core工程,服务扩展silencer工程,JSON封装目录。所有的工程文件在WINDOWS下可以通过vs 2010进行打开编译。
daemon 是revolver的精灵服务,daemon是个服务精灵守卫。可以通过VS 2010进行编译
test 大部分的单元测试和例子测试代码,test工程是revolver的单元测试代码工程,可以通过开启测试函数测试相对应的模块。sample_server是一个服务例子,可以与daemond一起进行工作。rudp sender是RUDP的发送端例子工程,rudp reciver是RUDP接收端例子工程。如果有什么疑问可以通过对应的测试程序帮助理解。
protocol analysis
协议翻译程序工程,工程可以用 vs2010进行编译,暂时不提供LINUX下的编译,是由金山的zhurw提供的,主要是将中间的协议描述脚本翻译成C++ / LUA / AS / JAVA等语言,方便协议的调试,以后我会专门开个主题,介绍协议翻译的原理和实现方式。
编译:
在linux,g++最好用g++ v 4.7以上的版本,先用git命令
git clone https://github.com/yuanrongxi/revolver
下载完毕后
cd revolver/cmake
输入cmake编译命令
cmake .
make
就可以完成了。
在WINDOWS下编译使用VS 2010在各个目录下有对应的工程文件,可以方便编译,就不再介绍了。