1、摘要毕业设计实时温度监控报警系统院 系:班 级:学 号:指 导 老 师:日期:摘要摘要随着互联网的普及,电信运营商开始介入到信息运营的业务领域,游戏业务是当前最大的互联网增值应用。随着游戏业务的规模扩大,数量众多的游戏业务迫切需要统一的管理平台的支撑。本文立足于电信运营商的网络游戏业务管理系统的项目建设,根据实际情况及需求,通过研究与分析,提出了一个完整的网络游戏业务管理系统设计方案。本文首先研究与分析了当前运行的网络游戏管理系统的现状,并指出了现有系统存在的主要问题。其次,阐述了相关的数据库、中间件等关键技术的原理与特点。第三,根据游戏业务管理的实际需求,提出了游戏业务管理系统设计方案,包括
2、总体方案和主要功能模块用户管理、系统管理、渠道管理、计费管理等详细设计。最后,指出了本研究的创新点与特色,以及需要继续努力的方向。关键词:互联网;游戏;业务管理;J2EE;JSP AbstractABSTRACTWith the popularization of the Internet, the telecommunication operator starts get involved an information to carry the business realm of the camp and the game business is current biggest Intern
3、et to increase in value an application.Along with the scale extension of the game business, the amount is numerous prop up of managements terraces that the game business urgently needs to be unify.This text is based on the item construction of the telecommunication operators management system of the
4、 game business, according to the actual circumstance and the need, pass research and analyze, put forward own game business a management system a design a project.Firstly, this text studies and analyzes the present condition of game system, and pointed out now systematic and existent key problem.Sec
5、ondly, elaborated the database, middle piece etc. key a technique.The third, according to the actual need of game business management, put forward game business a management system a design a project, include total project and main function mold a piece-customer management, system management, outlet
6、 management, charge management etc. design in detail.Finally pointed out this research of a little bit creative and special features, and need the diligent direction of continue.Key Words: Internet; Game; The business manage; J2EE; JSP第一章 引言目 录第一章 引言 .1.1 课题来源与背景 .1.1.1 课题来源 .1.1.2 课题背景 .1.2 研究现状与选题
7、意义 .1.3 本人主要工作 1.4 本文组织结构 第二章 系统需求分析 92.1 系统结构 92.2 负载均衡接入 .122.3 主要问题 .132.4 结论 .14第三章 主要知识与关键技术 .153.1 数据库 .153.1.1 关系数据库 .153.1.2 标准语言 SQL163.1.3 数据库设计 .163.1.4 数据库安全性和完整性 .173.2 中间件 .183.2.1 分布式多层应用程序 .183.2.2 J2EE 容器 .203.2.2 JSP 技术 21第四章 总体设计 .234.1 系统架构 .234.2 网络平台 .244.3 软件平台 .244.4 主要功能模块 .
8、25第一章 引言图 4.3 功能模块图第五章 功能模块设计 .25第五章 功能模块设计 .265.1 用户管理 .265.1.1 功能描述 .265.1.2 数据描述 .275.2 游戏房间管理 .315.2.1 功能描述 .315.2.2 业务流程图 .315.2.3 数据描述 .335.3 系统管理 .365.3.1 功能描述 .365.3.2 业务流程图 .365.3.3 数据描述 .375.4 监控管理 .395.4.1 功能描述 .395.4.2 业务流程图 .395.4.3 数据描述 .405.5 渠道管理 .405.5.1 功能描述 .405.5.2 业务流程图 .405.5.3
9、 数据描述 .415.6 服务管理 .425.6 1 功能描述 .425.6.2 业务流程图 .435.6.3 数据描述 .435.7 虚拟财富管理 .455.7.1 功能描述 .455.7.2 业务流程图 .455.7.3 数据描述 .46第一章 引言5.8 充值管理 .475.8.1 功能描述 .475.8.2 接口描述 .475.8.3 业务流程图 .485.8.4 数据描述 .485.9 结算管理 .555.9.1 功能描述 .555.9.2 业务流程图 .555.9.3 数据描述 .555.10 计费系统 615.10.1 功能描述 615.10.2 业务流程图 625.10.3 数
10、据描述 675.11 帐务管理 725.11.1 功能描述 725.11.2 业务流程图 74第六章 总结与展望 .756.1 总结 .756.2 展望 .75参考文献 76第一章 引言第一章 引言1.1 课题来源与背景1.1.1 课题来源本课题属于自选课题,来源于本人负责的一个商业性游戏项目。本文主要研究内容是电信运营商针对游戏业务的开展,设计一个对其业务的具有可管理、可拓展、高可靠的网络游戏业务管理系统,属于应用研究课题。1.1.2 课题背景随着网络技术的迅速发展,中国互联网发展迅速,根据 CNNIC 在 2007 年1 月的中国互联网络发展状况统计报告 1显示,中国目前有网民总人数为13
11、700 万人,其中有 26.6%的网民表示玩网络游戏是上网的主要目的,而 2006年全国的游戏产业规模达到了近 500 亿。随着游戏产业的发展,越来越多的游戏运营商开始进入这个行业。中国电信是国有特大型通信企业,主要核心业务是固定电话、小灵通和宽带接入。随着通信行业的竞争加剧,移动产品的替代性竞争越演越烈,中国电信意识到互联网业务的重要性,而互联网业务的价值链核心还是互联网应用。因此中国电信提出向综合信息服务提供商进行战略转型的要求。中国电信为了自身的发展需要,进一步充实自己的产业价值链,提高对内容服务市场的控制,开始逐步切入游戏服务市场,游戏项目由此孕育而生。在进入游戏市场后,游戏运营给中国
12、电信带来机遇的同时,也带来新的管理问题:一是游戏种类繁多,游戏规则各不相同,不同的游戏品种有着不同用户管理规则,而我们实现的游戏更多的是自己本地的游戏规则,没有现有的系统能实现对本地特色游戏的用户数据进行统一管理,因此,迫切需要有一个平台能实现对特色内容用户的统一认证。第一章 引言二是游戏业务属于新型的电信增值业务,没有现成的业务管理手段,大量的统计分析数据需要利用管理平台实现数据的统计和分析。三是游戏业务系统没有和原有的电信业务系统进行对接,实现不了对原有电信用户的价值综合利用。游戏业务管理系统可以实现融合各种本地游戏规则的业务内容,对新的游戏业务进行统计分析,并能综合利用原有的大量电信用户
13、的捆绑营销的优势。游戏业务管理系统由省中心门户统一规划部署,地市门户与省中心使用一套系统。在业务管理系统中根据的地市和人员设置不同的角色权限,实现多站点的分级内容管理。在业务管理时根据负载均衡和页面部署的要求发布到指定的 WEB 服务器上。系统通过访问或修改数据库来进行对用户及各种业务的处理。地市站点/网吧业务管理服务器用户数据库图 1.1 系统部署拓扑图客户端采集省中心站点和多个地市站点的数据,由业务管理服务器端进行统一处理。1.2 研究现状与选题意义游戏运营分为三个部分 2,包括游戏业务实现逻辑、游戏网站、游戏管理平台,而关键是业务管理平台。游戏业务管理系统是整个游戏项目的中心业务管理系统
14、,提供了电信本地游戏业务管理和后台支撑维护的手段,是电信本地第一章 引言游戏业务发展及进行运行维护活动的重要支撑系统。因此,有必要设计并实现一个既满足整个业务管理性能要求,又尽可能的降低成本,高可靠性、高拓展性的游戏业务管理系统。当前,国内运营的游戏品种非常多,游戏业务管理系统多属于游戏运营商的核心机密,而且不同游戏有不同的规则,没有统一的游戏业务管理系统。国内一些大型的游戏运用商都是自己研发完成自己的管理系统,因此没有借鉴能力。本地化的游戏规则是目前市场的一个空白点,因此适合本地游戏规则的游戏业务管理系统也是没有的。这是本项目的一个创新点。目前,游戏业务管理系统多用三层结构 3,底层采用数据
15、库 5,中间层采用中间件,上层采用客户端或浏览器的方式 4。这种方式具有以下一些特点:(1)先进性系统的设计要符合面向对象思想,分层管理。系统的模型设计、软件结构以及软硬件平台都应采用当前主流的技术。(2)实时性系统在完成各类实时功能时应保证系统响应的实时性,包括实时的认证、计费和操作维护等。(3)安全性系统应具备统一、完善的多级安全机制,以保证系统的安全性。系统应能抵御互联网上常见的各种攻击。(4)可用性系统应提供高可用性以及数据多重保护。(5)可靠性系统应避免由于单点故障影响整个系统正常稳定运行,避免关键信息的丢失。(6)可维护性系统应具有完善的自身监视和管理功能。(7)可操作性系统应提供
16、友好的中文图形操作界面和在线帮助。(8)开放性系统采用分布式开放结构,充分考虑与外部系统的接口。第一章 引言(9)可扩充性系统的软件设计采用模块化体系结构,新功能的引入不影响原有的功能模块,具有良好的可扩展性。同时,系统的容量可随硬件的扩容和软件的升级达到更高的要求。1.3 本人主要工作本人的主要工作是针对本地游戏业务的具体工作特点,结合电信传统业务的管理经验,利用当前主流的数据库和中间件技术,设计出一个三层技术架构,对本地游戏业务的具有可管理、可拓展、高可靠的业务管理系统。主要研究内容包括: (1)分析原有网络棋牌游戏的系统构架和拓扑结构。(2)网络游戏业务管理系统的总体设计与数据库设计。(
17、3)与原有电信用户管理平台等系统接口设计。1.4 本文组织结构本文共分六章,各章节主要内容如下:第一章 引言介绍了本课题的来源、背景及选题意义。第二章 系统需求分析详细介绍了现有游戏业务的系统构架、应用服务器分布、数据存储方式和负载均衡设计,并分析了其存在的主要问题。第三章 主要知识与关键技术详细讨论了相关的数据库技术、中间件技术的原理与技术特点。第四章 总体设计根据系统需求,给出系统架构、网络平台、模块组成等设计方案。第五章 业务功能设计根据网络游戏业务管理的特点,将系统分为用户管理、游戏房间管理、系统管理、监控管理、渠道管理、服务管理、虚拟财富管理、充值管理、结算管理、计费管理、帐务管理共
18、 11 个模块,分别进行阐述和设计。第一章 引言第六章 总结与展望指出了目前研究的创新点与特点,需要继续努力的方向。论文最后部分是“参考文献”第二章 系统需求分析8第二章 系统需求分析网络棋牌游戏目前新版本包括斗地主,拖拉机(升级) ,麻将,跑得快(争上游) ,拱猪,港式五张(梭哈) ,红心大战,510K ,炒地皮,三打一,锄大地,憋七,原子,双扣,象棋,四国军棋,围棋等 50 个最流行的网络棋牌游戏,所有游戏的规则跟以基本的流行规则的基础,加入了大量的本地化游戏规则,使得游戏的特色鲜明,具有强大的竞争优势。2.1 系统结构游戏系统主要由游戏服务管理控制器、游戏服务器端、游戏客户端、游戏后台管
19、理客户端、游戏数据库服务器、游戏 web 网页服务器和游戏相关的外围服务程序等几大部分组成。图 2.1 系统运行简图第二章 系统需求分析9图 2.2 棋牌游戏系统的系统结构框图第二章 系统需求分析101、数据服务器系统数据服务器系统担负着整个系统的所有数据调度的工作,另一方面和所有游戏服务器相连,并根据游戏服务器的要求从数据库中取出数据或存储数据。网络棋牌游戏支持多种数据库,可以根据需要采用 SqlServer、Mysql 或 Oracle等。网络棋牌游戏系统中,可采用用户注册资料数据库和用户积分数据库分离设计(两个数据库可在两个不同的服务器上) ,这样可方便的跟你原用户系统相结合,就是说用户
20、注册,登陆验证访问的是用户注册资料数据库,用户从游戏首页登陆后,再进入某个游戏服务器的某个游戏房间玩游戏时,游戏服务器会根据用户 ID 来读写用户积分数据库,游戏服务器把某个用户的游戏积分保存到积分数据库的时候会自动判断该用户在积分数据库是否已存在游戏的积分记录,并决定用 insert 或 update 语句来把积分数据保存到积分数据库中。 7-92、游戏服务器系统游戏服务器系统是整个网络游戏系统的中间层,也是最重要最复杂的一层。该系统向上与数据服务器相连接,向下与客户端用户相连。游戏服务器系统包括游戏服务管理控制器、WEB 网页服务器、游戏服务器、数据库访问接口模块、数据缓冲模块等 5 个模
21、块。(1)游戏服务管理控制器游戏服务管理控制器,管理、控制和同步所有的游戏 server,合计在线人数,定时生成当前所有游戏每个房间的在线人数数据,生成静态 htm 网页的游戏积分排行榜。(2)WEB 网页服务器提供游戏首页各个游戏服务器游戏房间,在线人数显示,客户端网页显示,用户注册、登陆,游戏排行榜、金币银行等服务。(3)游戏服务器按照每种游戏的规则处理相应的游戏数据;每种游戏都由一个单独游戏服务器程序负责处理数据,所以在一台游戏服务器所在的机器上,游戏服务器系统由单独一个或若干个游戏服务器端组成。每个游戏服务器端都上接游戏服务管理控制器和数据库服务器,下接游戏客户端。(4)数据库访问接口
22、模块数据库访问接口模块处理游戏服务器与数据服务器的网络连接和数据传递,第二章 系统需求分析11数据库访问接口模块采用了数据库连接缓冲池的设计 6,大大减少了游戏服务器对数据库服务器的并发连接数。(5)数据缓冲模块数据缓冲模块的引入使各个游戏服务器直接访问数据服务器的机会大幅度减少,从而减轻数据服务器的负担。该模块临时保存登录在各个游戏服务器的在线用户信息数据,在必要时为各个游戏服务器及时提供数据,同时确保用户信息数据更加安全,即使客户端用户私自更改自己的积分、财力等信息,也是徒劳,因为每个用户在选择某个游戏并进行登录时,用户数据是从该模块获得。3、客户端系统客户端系统是用户直接操作的应用子系统
23、,该系统只是按照用户的要求向游戏服务器提取相应的数据并显示,同时及时传达游戏服务器处理后的游戏及其相关数据,存储在客户端系统中的少部分数据是经过动态加密的,同时该系统发往游戏服务器的所有指令和数据也是经过动态加密的,如果心怀恶意的用户擅自更改内存中的数据或伪装发送数据,都会由系统在解密时发现错误,并自动将该用户的作弊行为发送给游戏服务器,直至数据服务器。客户端系统由客户端通讯中间件和所有游戏客户端模块、一个游戏后台管理客户端组成。所有的游戏客户端都包含有客户端/服务器端通讯中间件模块,这个通讯中间件负责按特定的格式把用户的数据和服务器数据进行交换。游戏后台管理客户端跟游戏服务器管理控制器相连接
24、,可在线添加、删除某个游戏的房间管理员,封锁、解锁某个或某段 IP,踢人,发布即时系统公告信息,修改房间设置,设置比赛房间数据等。4、游戏相关的外围服务程序游戏相关的外围服务程序是跟游戏相关的一些辅助性的程序,增加更多的游戏功能和娱乐性,一般为 PHP、ASP 或 JSP 的网页程序,如积分排行榜、金币银行存取钱,转帐服务,游戏社团及社团管理,游戏论坛,游戏比赛安排网页,用户积分、金币数据库后台管理程序等。2.2 负载均衡接入网络棋牌游戏游戏系统从设计开始就是支持多服务器负载均衡的。如果游第二章 系统需求分析12戏系统同时总在线人数超过 3500 人的话,就需要安装多个服务器支持。例如现在需要
25、架设一个能支持同时 1 万多人同时在线的的游戏服务器系统的话,按一个游戏服务器至少能支持 3000 人同时在线计算,需要 4 台安装游戏网络棋牌游戏 Server 的游戏服务器 + 1 台安装 WWW 服务、数据库服务和游戏管理控制器的服务器,整个系统总共需要 5 台服务器。1 万人同时在线的游戏网络棋牌游戏游戏系统的各服务器的推荐的硬件配置和软件配置如下:服务器名称 数量 硬件环境 操作系统环境主服务器(安装有 www 服务、数据库服务和游戏网络棋牌游戏 Master)1 台 P4 1.0GHz 以上1G 内存20G 以上硬盘100M 以太网卡Windows 2000 Advanced Se
26、rver 简体中文版+SP4 或 Windows 2003 Advanced Server 简体中文版,IIS 5.0, SQL Server 2000 数据库或Oracle 数据库游戏服务器(分别安装有各个游戏服务程序)4 台 P4 1.0GHz 以上512M 内存20G 以上硬盘100M 以太网卡Windows 2000 Advanced Server 简体中文版+SP4 或 Windows 2003 Advanced Server 简体中文版以上硬件环境中,主服务器和数据库服务器的硬盘最好采用 SCSI 硬盘,以增强 I/O 读写的速度和稳定性。2.3 主要问题从整体上看,游戏本身的逻辑
27、实现非常清晰、非常合理,游戏的分层架构,保证了系统的高拓展型;负载均衡的技术,大大提升了游戏的承载容量。但因为游戏的多样性,决定了系统缺乏可管理性,没有业务的管理平台,使得游戏不能运营,只能保证正常游戏。具体问题如下:(1)虽然游戏的用户通过统一数据库实现了统一认证,但用户在使用游戏业务的权限是分散的,也没有用户统计等管理。(2)系统中缺乏市场需要的分级管理、渠道管理等重要功能。(3)虽然实现了游戏规则,但用户的等级、虚拟物品等管理没有实现。第二章 系统需求分析13(4)系统缺乏基本的财务功能2.4 结论存在上述问题的根本原因是,游戏是由多家开发商完成的,原本开发产品的内容并不包含业务上发展的
28、需求。要解决这些问题,不仅需融合原有众多的游戏品种,而且需要设计一个高拓展性的网络游戏业务管理系统,以确保游戏业务正常的管理需要。第三章 主要知识与关键技术14第三章 主要知识与关键技术3.1 数据库3.1.1 关系数据库一个关系数据库(Relational Dalabbase)最多个关系的集合,这些具体关系构成了关系数据库的实例。由于每个关系郁有一个模式,所以,构成该关系数据库的所合关系模式的集合构成了关系数据库模式(Relational Dalabbase Schema) 。关系数据库管理系统一般向用户提供四种基本数据操纵功能:(1)数据检索。数据检索是指按照用户指定的条件查询一个关系内的
29、数据或多个关系间的数据。对一个关系内数据的检索主要是选扦一些指定的属性(列的指定)或选择满足某些逻辑条件的元组(行的选择) 。而对多个关系间数据的检索可以分解为:先将多个关系合并成一个大关系,然后检索合并后的关系。对多个关系的合并过程也是两个关系两个关系逐步进行的。如有三个关系A、B和c,可以先将A与B合并成D,然后台并C与D:因此,数据检索可分解成三个基本步骤:a)一个关系内属性的指定;b)一个关系内元组的指定;c)两个关系的合并。(2)数据插入。在关系内插入一些新的元组。(3)数据删除。在关系内删除一些元组。(4)数据修改。该操作实际上可分解为两个更基本的操作:先删除要修改的元组,再将修改
30、后的元组插入。上述四类数据操作的对象都是关系,对关系模型的数据操纵可描述为:(1)操纵对象是关系。(2)基本操纵方式有五种:第三章 主要知识与关键技术15 属性指定,指定一个关系内的某些属性,确定二维表中的列。主要用于检索或定位。 元组选择,用一个逻辑表达式给出一个关系中满足此条件的那些元组,确定二维表中的行。主要用于检索或定位。 关系合并,将两个关系合并成一个关系。用以合并多张表,从而实现多张表间的检索和定位。 元组插入。在一个关系中添加一些元组,用以完成数据插入或修改。 元组删除。先确定所要删除的元组,然后将它(们)删除。用于数据删除或修改。 10-123.1.2 标准语言 SQLSQL语
31、盲从功能上可以分为四部分:数据查询、数据操纵、数据定义和数据控制。SQL的核心部分相当于关系代数,但又具有关系代数所没有的许多特点,如聚集、数据库更新等。它是一个综合的、通用的、功能极强的关系数据库语言。其特点是:(1)数据描述、操纵、控制等功能一体化。(2)两种使用方式,统一的语法结构。SQL有两种使用方式。一是联机交互使用,这种方式F的sQL实际上是作为自含型语言使用的。另一种方式是嵌入到某种高级程序设计语言(如C语言等)中去使用。前一种方式适合于非计算机专业人员使用,后一种方式适合于专业计算机人员使用。尽管使用方式不向,但所用语言的话法结构基本上足致的。(3)高度非过程化。(4)语言简洁
32、,易学易用。 13-153.1.3 数据库设计数据库设计是指对于一个给定的应用环境,根据一个单位的信息需求、处理需求和数据库的支撑环境,利用数据模型和应用程序模拟现实世界中该单位的数据结构和处理活动的过程。它包括两个方面:静态特性设计和动态特性设第三章 主要知识与关键技术16计,静态特性设计又称数据模型设计或数据库结构设计;动态特性设计则是指数据库结构基础上的应用程序开发。数据库设计的主要目标包括:(1)最大限度地满足用户的应用功能需求。主要是指用户可以将当前与可预知的将来应用所需要的数据及其联系,全部准确地存放在数据库中。(2)获得良好的数据库性能。即要求数据库设计保持良好的数据特性以及对数
33、据的高效率存取和资源的合理使用,并使建成的数据库具有良好的数据共享件、独立性、完整性及安全性等。(3)对现实世界模拟的精确度要高。(4)数据库设计应充分利用和发挥现有DBMs的功能和性能。(5)符合软件工程设计要求,因为应用程序设计本身就是数据库设计任务的一部分。 163.1.4 数据库安全性和完整性数据库的安全性,就是防止非法用户使用数据库造成数据泄露、更改或破坏,以达到保护数据库的目的。数据库中数据必须在DBMS统一的严格的控制之下,只允许有合法使用权限的用户访问,尽可能杜绝所有可能对数据库的非法访问。一个DBMS能否有效地保证数据库的安全性是它的主要性能指标之一。数据库系统建立在操作系统
34、之上、操作系统统管计算机资源。如果操作系统存在安全漏洞,则非法者可能避开数据库的安全机制入侵数据库。更有甚者,人侵者具有DBA的所有权力。另外,人为的因素也是安全漏洞因素之一,例如人为的破坏,窃取合法用户的口令等等。事实上,这些漏洞占了安全问题很大的比重。在计算机系统中,安全性问题还要涉及以下领域:网络、服务器、用户、应用程序与服务、数据等。最需要考虑的安全性内容包括:(1)仅允许被授校用户访问网络和资源。(2)仅允许被授权用户执行某些特定的功能。(3)防止违反安全制度的操作并在这些操作企图被发现时及时发出警告。第三章 主要知识与关键技术17(4)通过在一个详细的Bti(日志文件)中记载所有用
35、户的活动,监视系统的安全性(5)为本地和远程计算机系统提供一个集中的安全性控制点。(6)将系统超级权限委托给系统管理员,确保超级特权安全。 173.2 中间件3.2.1 分布式多层应用程序J2EE平台使用多层分布式的应用模式。应用逻辑根据其功能分成多个组件,各种不同的应用组件构成分布在不同的依赖于层的机器上的J2EE程序。下面列出了位于不同层的组件: 运行在客户机上的客户层组件 运行在J2EE服务器上的网络层 运行在J2EE服务器上的逻辑层 运行在EIS服务器上的企业信息层尽管J2EE应用程序可以由三层或四层构成,J2EE应用程序通常由三层构成,因为他们分布于三个不同的位置:客户机,服务器,后
36、台数据库服务器。通过这种方式运行的三层应用模式拓展了基于客户服务的两层模式。1、J2EE 组件J2EE应用程序由组件构成。一个J2EE组件是自包含的,与其相关的语气它组件通信的类及文件集成到J2EE应用程序的功能软件单元。J2EE规范定义了下面一些组件: 运行在客户端的应用客户程序及小程序。 运行于服务器网络的Servlet&Jsp组件。 运行于服务端的企业逻辑组件EJB。J2EE组件用Java语言编写,通过相同的方法编译。J2EE组件与标准Java类的不同之处在于J2EE组件集成到了应用程序中,证明能很好的组成,与J2EE规范兼容,并部署到负责运行、管理的J2EE服务器上。2、J2EE 客户
37、端J2EE客户端可以使网络浏览器也可以是桌面应用程序。第三章 主要知识与关键技术18网络浏览器网络客户程序由两部分组成:动态网页包含各种标记语言(HTML,XML等) ,它由运行于网络层的网络组件产生,浏览器从服务器接受信息并反馈到页面上。网络客户端又称为瘦客户。瘦客户端通常不运行像查询数据库,执行复杂的业务规则,或连到合法的应用程序。当你使用瘦客户时,重量级的操作都载入到运行于J2EE服务器上的企业Bean,它能够均衡安全,速度,服务及可靠性。小程序网页可以包含小程序。小程序是一个较小的用java语言编写的程序,并能通过安装在浏览器上的虚拟机运行网络组件首选API,它可以创建网络客户层,因为
38、在客户系统中它不需要插件或安全策略文件,宁外,网络组件能提供更干净的,模块化的应用设计,因为它将程序设计与页面设计相分离。这样,页面设计人员可以进行页面设计而不需要懂Java程序设计。应用客户端J2EE应用客户端运行在客户上,它为用户处理任务提供了比标记语言丰富的接口。典型的是它拥有通过Swing&AWTAPI建立的图形用户界面,基于命令行的接口也是可以的。应用客户端可以直接调用业务逻辑层的企业bean。JavaBean 组件结构服务端及客户端也可以包含基于JavaBean组件来管理客户端与运行于服务端的组件间的数据流或服务端组件与数据库间的数据流。J2EE规范没有认为JavaBean为j2E
39、E组件。JavaBean组件有实例变量和get,set方法来设置、获取变量值。3、网络组件J2EE网络组件可以是servlet或jsp。Servlet是java类,它能动态处理请求及响应。Jsp页面是基于文档的,能像servlet一样执行的能允许更多的静态页面内容。静态HTML页面及applets域网络组件绑在一起,但J2EE规范没有认为这些为网络组件。第三章 主要知识与关键技术19网络层可以包含JavaBean组件来管理用户输入、发送输入道逻辑层的EJB以处理。4、业务逻辑组件业务逻辑代码是解决、达到特定业务领域的需求,如银行、零售、金融,又EJB处理的业务逻辑层。企业Bean可以重新从存储
40、器找回数据,如果必要并处理它,然后发送到客户程序。总共有三种EJB:会话bean,实体bean,消息驱动bean。会话bean代表短暂的与客户的会话,当客户结束执行时,会话bean及它的数据就消失了。与会话bean相比,实体bean代表存储在数据库的表,如果客户结束程序或服务器关闭,潜在的服务方法会将数据存储。 18-233.2.2 J2EE 容器瘦客户端的多层应用程序总是很难开发,因为它包括各个层的事务处理、状态管理、多线程、资源池和其他复杂底层细节等等的错综复杂的编码。但是基于组件和平台独立的J2EE平台使J2EE应用程序容易开发,因为商业逻辑被封装在可重用的组件(EJB)中。另外J2EE
41、服务器以容器的形式为所有组件提供底层服务,因此你不必再为这些底层服务二伤脑筋,而可以专注于解决商业问题。1、容器服务容器(Container)是组件和支持组件功能的底层特定平台(如数据库)之间的接口。在运行Web组件、企业Bean或者J2EE应用程序客户端之前,你必须将它们装配到一个J2EE应用程序中,并部署它们到容器中。装配的过程包括为J2EE应用程序的每个组件 和J2EE应用程序本身设置容器的配置信息。这些配置信息定制J2EE服务器支持的底层服务,包括安全,事务管理,Java命名和目录接口(JNDI)查找和远程连接等。事实上,J2EE体系结构提供可配置服务意味着同一个J2EE应用程序中的组
42、件可以根据不同的部署环境而有不同的行为。例如,一个企业Bean的安全配置可以使它在一种产品环境中有一个级别的数据库数据访问权限,而在另一种产品环境中有不同的数据库数据访问权限。第三章 主要知识与关键技术20容器也管理着很多不可配置的服务,如企业Bean和Servlet的生命周期,数据库连接池,数据持久化机制和J2EE平台API的访问权等等。尽管数据持久化机制是不可配置服务,但是J2EE体系结构允许你忽略容器管理的持久性(Container-Managed Persistence,CMP)机制在企业Bean实现中加入合适的代码,当然除非你确实需要比容器管理持久性机制提供的更多的应用程序控制权,否
43、则使用容器管理的持久性。例如你可以用Bean管理的持久性(Bean-Managed Persistence,BMP)机制来实现自己的查找方法或者创建一个定制的数据库缓冲池。2、容器类型部署过程将J2EE应用程序安装到J2EE容器中。下图展示了组件在容器中的情况: 24-31图 3.1 J2EE 服务器和容器(Container)第三章 主要知识与关键技术213.2.2 JSP 技术JSP是基于文本的文件,它包含两种类型的文本:静态模板数据任何基于文本格式的都可以被表示,例如HTML,SVG,WML,和XML;动态内容由JSP元素构成。JSP技术可以轻松的创建静态及动态的网络内容。它设计了所有J
44、ava Servlet技术的动态能力而且还提供了更自然的途径创建静态内容,JSP主要特点如下: 有专门的语言开发jsp页面,这些都是基于文本的来描述如何处理请求及产生响应。 为访问服务端对象进行构造。 有定义扩展语言的机制。 32-37第四章 总体设计22第四章 总体设计4.1 系统架构Data SourceData LayerBusiness LayerGame ServiceGame ClientBusiness ManageWeb PageInternet InternetInternet图 4.1 系统构架图本系统采用流行的三层架构。Data Source 为底层数据库用于存储平台所有
45、数据;Data Layer 为数据库处理层用于操作数据库层对数据进行增删改查。Business Layer 为业务逻辑层用于对数据进行验证、处理。Application Layer 为应用层(数据显示层)用于将数据显示给用户。考虑到数据安全本系统采用了 Web Service 使得应用层通过该服务读取和存储数据而不能直接访问第四章 总体设计23数据库。4.2 网络平台所有的游戏服务器构建在一个局域网内,然后通过汇聚交换机出口上联到电信运营的核心交换机。为了更好的保护内部的数据,另外在广域网的出口上串联了一台防火墙。具体设计见下图:图 4.2 网络拓扑图4.3 软件平台服务器操作系统:Micro
46、soft Windows 2003 Server数据库管理系统:SQL ServerJSP 和 servlets 支持平台:Apache Web Server 和 Tomcat 中间件第四章 总体设计24底 层 数 据 库 用 户 管 理 系 统 管 理 监 控 管 理 游戏房间管理 虚拟财富管理 渠道管理 服务管理 充值管理 结算管理 计费管理 帐务管理 计 费 帐 务 基 本 业 务 基 础 管 理 开发工具:JBuilder4.4 主要功能模块图4.3 功能模块图第五章 功能模块设计25第五章 功能模块设计本地游戏的业务管理是针对整个游戏中用户的使用、点卡的销售、新产品、游戏房间以及结算
47、分成等方面的进行全面管理的系统。由于游戏在运营的过程中是不断增进、修改、完善的,因此不断有新的用户的加入,新的业务的上线,因此就要求能够为这些新的业务提供足够强大的支持,以便于业务的拓展。根据本地游戏业务管理的特点,我们将整个系统分为 11 个模块,分别为:用户管理、游戏房间管理、系统管理、监控管理、渠道管理、服务管理、虚拟财富管理、充值管理、结算管理、计费管理、帐务管理。 38-415.1 用户管理5.1.1 功能描述(1)用户开户按所需的个数开通需要体验的用户帐号,能够赋予相应的服务。(2)查询/修改用户信息查看所有用户信息,并可以进行修改。(3)查询用户清单查询用户的消费详单。(4)用户
48、退费及用户退费查询添加、查询用户退费情况,及退费原因。(5)用户惩罚处理添加、查询用户惩罚处理情况。第五章 功能模块设计265.1.2 数据描述(1)用户信息(GameUser)中文名称 注释用户编号用户英文名地区代码 701鹰潭790新余791南昌792九江793上饶794抚州795宜春796吉安797赣州798景德镇799萍乡用户昵称用户类型 00普通用户01体验用户02网吧用户03测试用户04宽带用户05小灵通用户06互联星空用户99未知用户用户密码 MD5 加密用户状态 00正常01冻结02暂停03注销用户金币 默认 0(考虑安全性,进行加密,但对于统计麻烦,可从管理上解决)注册时间 YYYYMMDDHHMMSS注册 IP最后登陆时间 YYYYMMDDHHMMSS最后登陆 IP状态更新时间 YYYYMMDDHHMMSS