HMX-Server C++ 分步式服务器大版本更新了(有源码)
原文地址:http://www.cnblogs.com/hellohuang/p/6294763.html
# HMX-Server
HMX-Server分步式服务器框架,主要分为网关、登录、世界、场景、数据服务器,适用于大中小型项目
# 安装步骤
1. 下载后,将Source/dependence/下的boost,protobuf里面的lib.rar解压到当前目录
2. 安装Cmake-3.4 x64以上版本,vs2015 x64 ,mysql5.6 x64
3. 用Cmake进行创建方案然后并整个解决方案编译
4. 导入Source/sql/下的hmx-data.sql数据,数据密码配置在Source/WorldServer/serices.xml文件中
5. 在vs中按顺序启动WorldServer.exe、BServer.exe、GameServer.exe、LoginServer.exe、GatewayServer.exe或在Bin/Debug/中双击RunServers.bat启动服务器
5. 在vs中启动Client.exe或在Bin/Debug/双击Client.exe启动客户端进行测试
***
# 运行示例图
**世界服启动**
**数据服**
**场景服**
**登录服**
**网关服**
**客户端**
# 目录介绍
1. Bin/Debug/ 编译存放目录
2. Resource/ 配置及资源目录
3. Source/ 源代码文件
- 1. Client/ 测试客户端
- 2. DBServer/ 数据库处理服
- 3. dependence/ 第三方依赖库
- 4. FlatServer/ 平台方案服(跨平台转发协议用,暂未实现)
- 5. GameServer/ 场景服务器
- 6. GatewayServer/ 网关服务器
- 7. HelpTools/ 工具项目(用于生成数据、处理数据辅助开发用)
- 8. Include/ 共用引入文件
- 9. LibNetMysql/ Mysql数据库封装类库
- 10. LibNetSocket/ Socket封装类库
- 11. LibProtocol/ Protocol协议类目录
- 12. LibSrvcore/ 本项目共用类库
- 13. LoginServer/ 登录服务器
- 14. LogServer/ 日志服务器(数据库日志、暂未实现)
- 15. MQServer/ 消息队列服务器(处理外部可延时事件,持久例事件处理,如充值、后台调用等;暂未实现)
- 16. ShiftServer/ 区域管理服务器(暂未实现)
- 17. sql/ 数据库更新记录目录
- 18. WorldServer/ 世界服务器
4. vc14/ 这个是用cmake 生成的文件目录(名字自定)
# 服务器层级介绍
平台服 <-----------平台服-------->Mysql(管理后台数据库)
|
/ \
区域服1 区域服2
|
/ \ 世界服、数据服、登录服
世界服1 世界服N <------------------------>Mysql(游戏数据库)
/ | \ \
/ | \ | \
/ | \ | \
场景服1 场景服N \ <-> 数据服 <-> 登录服
\ \ | --- /
\ |(世界服) /
\ | /
网关服1 网关服N
# NetSerivce.cpp 总管理器文件
1. 聚合了大部分该服务器的管理类,所有资源都需要从NetSerivce中获得,这样做的目的是将资源都聚合在一起,提供统一接口,方便记忆与管理,比如:你所找要的资源->NetSerivces实例对象->get各个资源类->get所需要的资源
2. NetSerivce也包括了main函数,启动程序的入口
3. serivces.xml配置文件以WorldServer/目录下的为准,当重新编译WorldServer时,会自动将它拷贝到Bin/Debug和vs项目调度目录下
[github]https://github.com/huangzuduan/HMX-Server
HMX-Server C++ 分步式服务器大版本更新了(有源码)的更多相关文章
- 基于Zookeeper的分步式队列系统集成案例
基于Zookeeper的分步式队列系统集成案例 Hadoop家族系列文章,主要介绍Hadoop家族产品,常用的项目包括Hadoop, Hive, Pig, HBase, Sqoop, Mahout, ...
- Apple公司Darwin流式服务器源代码分析
当前,伴随着Internet的飞速发展,计算机网络已经进入到每一个普通人的家庭.在这个过程中,一个值得我们关注的现象是:Internet中存储和传输内容的构成已经发生了本质的改变,从传统的基于文本或少 ...
- 10Java Server Pages 隐式对象
Java Server Pages 隐式对象 JSP隐式对象是Web容器加载的一组类的实例,它不像一般的Java对象那样用“new”去获取实例,而是可以直接在JSP页面使用的对象.JSP提供的隐式对象 ...
- Windows Server 2003搭建邮件服务器
Windows Server 2003搭建邮件服务器 由于Windows Server 2003默认是没有安装我们搭建邮件服务器所需要的POP3和SMTP服务的,因此需要我们自己来安装.方法如下: 1 ...
- 转】Mahout分步式程序开发 聚类Kmeans
原博文出自于: http://blog.fens.me/hadoop-mahout-kmeans/ 感谢! Mahout分步式程序开发 聚类Kmeans Hadoop家族系列文章,主要介绍Hadoop ...
- 转】Mahout分步式程序开发 基于物品的协同过滤ItemCF
原博文出自于: http://blog.fens.me/hadoop-mahout-mapreduce-itemcf/ 感谢! Posted: Oct 14, 2013 Tags: Hadoopite ...
- Mahout分步式程序开发 聚类Kmeans(转)
Posted: Oct 14, 2013 Tags: clusterHadoopkmeansMahoutR聚类 Comments: 13 Comments Mahout分步式程序开发 聚类Kmeans ...
- sql server登录名、服务器角色、数据库用户、数据库角色、架构区别联系
原创链接:https://www.cnblogs.com/lxf1117/p/6762315.html sql server登录名.服务器角色.数据库用户.数据库角色.架构区别联系 1.一个数据库用户 ...
- Mahout分步式程序开发 基于物品的协同过滤ItemCF
http://blog.fens.me/hadoop-mahout-mapreduce-itemcf/ Hadoop家族系列文章,主要介绍Hadoop家族产品,常用的项目包括Hadoop, Hive, ...
随机推荐
- POP音原因
一,通话时调节音量,有POP音. POP音产生原因在于,音量变化太大导致有POP音,需要以淡入淡出的方式调节音量.请申请MOLY00108114 & MOLY00108143这两个Modem ...
- Android WifiDisplay分析一:相关Service的启动
网址:http://www.2cto.com/kf/201404/290996.html 最近在学习Android 4.4上面的WifiDisplay(Miracast)相关的模块,这里先从WifiD ...
- word加载项打包发布注意事项总结
最近在做一个word加载项,发布的时候还是有很多坑的现在总结一下:发布工具为Advanced Installer 11.0 网盘地址:http://pan.baidu.com/s/1i4GK3g5 1 ...
- [python]小练习__创建你自己的命令行 地址簿 程序
创建你自己的命令行 地址簿 程序. 在这个程序中,你可以添加.修改.删除和搜索你的联系人(朋友.家人和同事等等)以及它们的信息(诸如电子邮件地址和/或电话号码). 这些详细信息应该被保存下来以便以后提 ...
- 内置Web Server
在终端输入命令:php -S localhost:8000 -t xxx(某个目录或文件) 这个内置的Web服务器主要用于本地开发使用,不可用于线上产品环境. URI请求会被发送到PHP所在的的工作目 ...
- ID3决策树预测的java实现
刚才写了ID3决策树的建立,这个是通过决策树来进行预测.这里主要用到的就是XML的遍历解析,比较简单. 关于xml的解析,参考了: http://blog.csdn.net/soszou/articl ...
- Vue.js使用前
下载安装 node,npm,git 安装cnpm 淘宝cnpm镜像https://npm.taobao.org/,-g表示进行全局安装 npm install -g cnpm --registry=h ...
- 【转载】Eclipse 断点调试
作为开发人员,掌握开发环境下的调试技巧十分有必要.去年就想把关于Eclipse断点调试总结下了,由于对时间的掌控程度仍需极大提高,结果拖到今年才写了此篇博文.关于Java调试技术还有很多,如Jav ...
- 部分网站允许空白referer的防盗链图片的js破解代码
Reference: http://www.114390.com/article/27125.htm Javascript源码: 复制代码代码如下: function showImg( url ) { ...
- [noip2013]货车运输(kruskal + 树上倍增)
描述 A 国有 n 座城市,编号从 1 到 n,城市之间有 m 条双向道路.每一条道路对车辆都有重量限制,简称限重.现在有 q 辆货车在运输货物,司机们想知道每辆车在不超过车辆限重的情况下,最多能运多 ...