(原文地址:http://www.cnblogs.com/hellohuang/p/5492302.html )

这是一个简单实现有分步式框架,由5个服务进程组成一个服务器,它们分别是世界服(Ws),数据库处理服(Dp),场景服(Ss),网关服(Fep),框架的思想用来自工作项目框架(但没有它的代码在里面),下来来讲讲几个进程作用。


世界服:它是一组服务器的中心,一组服务器有且只有一个,所以它负责联系该组服务器的所有进程,同时也当作共用数据服来用
数据处理服:它是只要保存数据,缓存数据用的进程,它负责自动从mysql上获得数据,再交给请求者;首先它是从自己内存中查找,找不到,则从数据库加载到内存,再返回给请求者,同时它还定时保存。
登录服:它是负责管理登录的,帐号密码验证,防暴力破解等功能
场景服:只要是起分地图或分流作用的。
网关服:只要是起分流作用的
 
一组服务器至少要以上5个进程组成,缺少一个不可,由于设计分步式的,所以除了世界服只能一个外,其他场景服,数据处理服,网关服,场景服,登录服都可以开N个(N<少Socket设定最大连接数)
 
HMX-Server:LIBSocket与LIBMysql总体沿用swa-server相关的代码,代码现在完成基本的底层框架,可以实现多开服务器,里面有一小部分例子,如玩家登录->发送消息->收到消息->退出保存数据等。现在由工作太忙,无法再继续写下去,喜欢的码友,拿去玩吧,HMX-Server按目前,只能适合用于中小并发量的场景,因为现在还有很多东西没有优化,也有少许的bug,将来我会继续优化与加功能,可以应用于大场景。
 
下面是一些组图:
---------------------------------------------------------------------------------------------------
 
 
---------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------
 
代码已经放到了Github中,代码参杂到别的东西的代码时,请无视它,哈哈!
源码地址:https://github.com/huangzuduan/HMX-Server
由于boost库与mysql太大,请从下以两个地址下载:

boost 1.60-x64 http://pan.baidu.com/s/1pL6DheN
mysql 5.56-x64 http://pan.baidu.com/s/1nu5KZsH

安装过程请读下载源码中的Readme.txt
如果大家有疑问:加我QQ:296464231(注明,否则会拒绝的)
-----------------------------------------------------------
之前发表过一篇关于SWA-Server项目,它是单进程的服务器,发表后,有少量有网友把它当作入门例子使用,所以现在我在SWA-Server项目中加入了Cmake生成项目工具,方便网友下载后直接可以通过Cmake生成项目,并能一次编译成功与运行。
posted on 2016-05-16 11:21  HolleHuang  阅读(2320)  评论(3编辑  收藏  举报