游戏服务端框架设计方案_第1页
游戏服务端框架设计方案_第2页
游戏服务端框架设计方案_第3页
游戏服务端框架设计方案_第4页
游戏服务端框架设计方案_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、技 术 文 件技术文件名称:游戏服务端框架设计方案技术文件编号: 版 本: 拟 制 刘 阳 审 核 会 签 标准化 批 准 中兴软件技术(南昌)有限公司版本变更记录文件编号版本号拟制人/修改人拟制/修改日期更改理由主要更改内容(写要点即可)刘阳2007.12拟制注1:每次更改归档文件(指归档发布数据库)时,需填写此表。注2:文件第一次归档时,“更改理由”、“主要更改内容”栏写“无”。目录 TOC o 1-3 h z u HYPERLINK l _Toc187145721 版本变更记录 PAGEREF _Toc187145721 h 2 HYPERLINK l _Toc187145722 目录

2、PAGEREF _Toc187145722 h 3 HYPERLINK l _Toc187145723 1.1缩略语 PAGEREF _Toc187145723 h 3 HYPERLINK l _Toc187145724 2系统体系结构 PAGEREF _Toc187145724 h 4 HYPERLINK l _Toc187145725 3标准化设计 PAGEREF _Toc187145725 h 5 HYPERLINK l _Toc187145726 3.1系统管理层模块 PAGEREF _Toc187145726 h 5 HYPERLINK l _Toc187145727 3.2控制处理

3、层模块 PAGEREF _Toc187145727 h 6 HYPERLINK l _Toc187145728 3.3应用接口层模块 PAGEREF _Toc187145728 h 8 HYPERLINK l _Toc187145729 4开发和运行环境 PAGEREF _Toc187145729 h 11 HYPERLINK l _Toc187145730 4.1硬件环境 PAGEREF _Toc187145730 h 11 HYPERLINK l _Toc187145731 4.2软件环境 PAGEREF _Toc187145731 h 11 HYPERLINK l _Toc1871457

4、32 5参考文献 PAGEREF _Toc187145732 h 12缩略语本文件应用了以下缩略语:表3缩略语原 文中文含义JDKJava Developer Kit 开发运行环境系统体系结构手机网络游戏框架体系示意图:手机网络游戏服务端建立在Java的开发平台上,游戏框架作为一个平台独立于游戏逻辑层,各游戏可单独接入平台框架实现游戏具体逻辑。本文主要描述服务端平台框架层的逻辑结构设计。网络游戏框架平台层可分为三个主要部分:系统管理层;控制处理层;应用接口层。系统管理层:主要负责平台框架的系统管理,包括数据库管理,日志管理,配置管理等,这些管理器通过底层管理器和控制器协调工作。控制处理层:服务

5、器处理业务逻辑需要多线程进行协同工作,对游戏的业务处理分别对数据读入,任务处理和数据写出建立线程池。并且统一使用线程池的线程控制接口进行管理。应用接口层:游戏接入平台框架需要统一接口方式,平台建立游戏逻辑的接口。并且建立网络传输数据的基础协议,具体游戏可以在基础协议上加内容,平台框架向下兼容。游戏中使用的公共对象进行独立封装,提供复用性。标准化设计系统管理层模块系统平台管理层是对整个服务端框架进行操作管理的部分,包括数据库管理器,日志管理器,配置管理器。所有管理器统一由中央管理器和控制器协调工作。系统管理层类关系图:数据库管理器(DatabaseDriver)提供数据库连接的创建,数据库查询,

6、更新,删除操作的管理。同时它也是一个数据库连接池,对连接的创建,删除,等使用状态进行监控,随时为游戏逻辑操作数据库提供连接对象。数据库模块图:数据库操作:查询;更新;插入;删除的流程全部封装到相应的类中,Executer作为数据库操作的抽象类实现Executable接口。日志管理器(Console)提供系统日志记录的管理模块,日志管理器记录标准格式的信息输出,可进行后台打印输出也可以进行文件打印输出。日志记录的关键在于信息的准确性和完整性,通过查看日志可以了解系统运行状况,如果发现问题能够准确定位。配置管理器(Propertor)提供配置信息的读取管理的模块,配置管理器在系统启动的时候建立一个

7、属性表,读取配置信息到属性表中,在系统运行时需要某个值的时候直接从内存的属性表中取。可将系统中常常需要更新调试的值或者于逻辑无关的信息配置到文件中通过配置管理器进行操作。中央管理器和控制器(Manager;Control) 各管理器都是单实例形式存在,中央管理器实现了游戏控制接口,初始化系统和游戏逻辑平台,它保存了控制处理层中的核心数据结构,并且起到了对游戏逻辑进行流程分发的作用。控制器协助中央管理器对平台的启动,运行,关闭等操作进行控制。控制处理层模块 控制处理层是建立在系统管理层上的应用模块,同时也是平台系统进行流程处理的核心模块,该模块由三个线程池构成:数据读入线程池;任务处理线程池;数

8、据输出线程池;每个线程池中包含多个线程负责相关的流程处理。各线程池功能图:客户端连接上服务器后,连接对象被保存到SocketLinkQueue队列中,数据读入线程从连接队列中循环取连接对象进行读数据操作,读取的数据以封装到LinkData对象中,然后放入ReadDataQueue队列中,任务处理线程从读数据队列中取LinkData对象进行业务逻辑流程处理,然后将此对象放入WriteDataQueue队列中,数据输出线程从写数据队列中取LinkData对象,将数据输出给客户端。ReadDataQueue和WriteDataQueue队列中都是存放的同一个LinkData对象,并且该对象包含连接对

9、象信息,读入的数据协议和输出的数据协议。线程池类图: 管理器中包含数据读入线程池对象,任务线程池对象,数据输出线程池对象;连接信息对象,读入数据队列,输出数据队列。各线程池通过实现ThreadPool接口进行管理。应用接口层模块应用接口层是平台框架与业务逻辑进行连接的唯一通道,该层将框架结构和业务逻辑进行分离,同时又无耦合的连接二者的流程处理,所以该层必须具有通用性和复用性。应用接口层分三个模块:游戏公用对象框架应该提供通用的游戏基础对象,比如每个游戏都具有的大厅对象,房间对象,座位对象,连接对象等。将这些对象建立在框架的应用层上,在实现游戏逻辑的时候直接复用这些公共对象对理解游戏流程和建立游

10、戏业务逻辑都非常方便。公用对象类结构图:大厅和房间对象都实现了线程管理接口,因为大厅和房间在游戏中可能会随时更新信息,但是对于处理流程则由接口放到了具体游戏类中实现。每个公用对象包含了自己应该具有的属性和层次关系。基础协议包服务端和客户端的通讯通过协议进行描述,在框架层建立基础协议包,将协议的规范和结构定义到类描述中,每个游戏在基础协议包上添加内容即可构建完整的协议数据,在实现游戏协议的时候避免了大量的工作去定义协议。基础协议描述图:基础协议类图:基础协议类提供了快速创建协议数据的方法:factory(),对协议数据中各部分的获取,如内容数据,协议长度,游戏标志,任务标志等都提供方法调用,在游戏逻辑中只需要调用append()方法即可添加协议内容,而对内容在协议中怎么存放,协议长度变化和结构调整都不需要关心。游戏管理接口游戏平台框架必须要提供一个给游戏逻辑接入的方式,此方式就是游戏管理接口。该接口将游戏逻辑和平台结构逻辑分离,在接入新游戏的时候实现管理接口,可以避免在开发游戏业务逻辑的时候分心去关注底层实现,同时也清晰了游戏框架的结构,提高了复用性。游戏管理接口图:游戏管理平台初始化的时候从perties配置文件中读取每个游戏管理器的类路径,此类必须实现管理接口Controlable。在平台框架管理器中创建各游戏的管理对象,游

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论