基于Socket的游戏服务器的设计与实现

被引量 : 20次 | 上传用户:zhaolong0804
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着网络技术的发展和国家政策的支持,中国游戏产业进入了高速发展的时代。网络游戏的复杂度日益提升,由最初的单机小游戏变成如今几十万人甚至上百万人同时在线的网络虚拟世界,而一个稳定高效的后台服务器则是任何虚拟游戏世界的基础保障。本项目是设计与开发基于socket的游戏服务器端。网络游戏通常由客户端和服务器端组成,无论是端游、手游还是页游都离不开服务器的支持。不同平台上的不同游戏客户端展现的界面都不相同,但是服务器端的基本框架和基本逻辑都是可复用的。本项目开发目的是对通用服务器的底层框架和基本逻辑进行封装。基础框架主要包括数据模块、线程模块、协议模块、对象管理模块、数据库日志模块和网络IO模块等。应用层在基础层框架基础上封装应用层服务器和网关服务器,分别用来处理逻辑和转发协议。本系统的开发使上层逻辑服务器只需要关注游戏本身逻辑而不必关心底层细节以节省开发成本。为实现项目需求,作者设计并实现了基础框架层和应用逻辑层两部分。基础层框架提供各种上层开发需要用的模块:线程模块主要处理多线程和线程安全问题;协议模块封装系统通讯协议;数据模块封装数据流以及数据流的加密和压缩;对象管理模块统一管理程序中的所有服务器对象;数据库日志模块封装数据库操作以及系统日志功能;网络IO模块处理网络的所有相关操作;在应用层实现中,为了提高消息转发和事件驱动效率,本程序引入了libevent和zeromq两个开源网络框架以提高服务器性能和稳定性。应用层模块主要封装了应用服务器和网关服务器。应用服务器主要封装服务器基本逻辑。网关服务器则作为一组应用服务器的接口处理消息转发。在应用层基础上开发的服务器只需要设计服务器对象和通讯协议而不必关注底层细节处理。目前,作者已经基本完成上述所有功能的设计和实现。以本项目为基础开发的应用服务器已经投入使用,并且在性能和稳定性方面都符合预期要求。此项目的开发和使用大大节省了公司服务器方面的开发时间和成本。
其他文献
目的:本研究以脉络学说为指导,观察高血压、高血脂、高血糖等高危因素人群甲襞微循环形态、流态、袢周状态变化,探讨“孙络—微血管”病变特征,研究甲襞微循环与颈动脉粥样硬化病
阿尔茨海默病(Alzheimer’s Disease,AD)是一类威胁人类健康的重大疾病。AD是一种由多个因素共同主导的疾病,这种疾病表现为多个基因、通路以及蛋白出现失调。这种由多个因素共
飞机是一个非常复杂的系统,为了保证飞机安全准点的运行,航空公司需要投入大量的人力和物力来维护和维修飞机。航材作为航空公司机务维修工作的生产资料,是保障航班安全准点的物
在汽车轻量化过程中,最常用的方法是使用轻合金代替传统的钢铁材料,其中铸铁发动机通常被铝制发动机替代,但铝制发动机缸体存在耐磨性差的问题。目前常用的解决方案是在铝制
焊接熔池体积小、温度高以及实验条件的限制,采用实验手段很难对熔池进行物理测试,而通过数值模拟技术能够为焊接过程提供完整的温度场、流场等信息,有助于更深入的理解焊接
研究镁合微种植体植入后对骨周围生物相容性以及降解后的抗力分析。方法分别在白兔颌骨中植入镁合金种植体,和钛合金种植体。对种植体加力,在4w,8w,12w后观察骨组织,进行SEM
目的了解高校大学生主观幸福感现状及其影响因素,为缓解大学生心理危机提供参考。方法采用总体幸福感量表(GWB)、家庭关怀度指数(Family APGAR index)、一般自我效能感量表(GSES)对
<正>国有企业是我国国民经济的重要支柱,是推进国家现代化、保障人民共同利益的重要力量。中共十八届三中全会通过的《中共中央关于全面深化改革若干重大问题的决定》,对深化
患者男,60岁。发热17 d,全身皮疹15 d。体温38。C-41。C,左下颌关节附近触及一枚花生米大小淋巴结,额头、背部、双前臂及下肢散布浸润性红斑、结节。外周血WBC 17.63×109/L