web策略类游戏开发(四)一个可以承载万人在线的架构
来源:互联网 发布:u盘在mac上不显示 编辑:程序博客网 时间:2024/04/29 23:48
Webgame现在已经开始需要进入大统一服务器时代,每个游戏区域容纳的玩家数量将从现在的几万人发展到几十万人,因此在新的背景下,webgame如何处理大量用户的请求将成为问题。目前一台asp.net做的weggame服务器每秒能处理500~1000个页面请求,按照每个玩家每隔3~5秒做一次页面操作(页面请求),一台服务器能承受2k~4k的玩家在线,对于一个只有几万人的策略游戏来说,已经是足够了。但对于一个未来将承载几十万人的游戏来说远远不够。
通过分析,玩家在游戏过程中,有80%以上的访问仅仅只是查看玩家在游戏里的状态,实际上真正会对游戏运行状态及数据修改的的页面请求不足20%。因此,我们可以将呈现页面和处理游戏逻辑的功能拆分为2组服务器:页面服务器和逻辑服务器。两者之间可以通过remoting的方式进行数据通讯。将服务器分离后,随着页面服务器的增加,页面访问能力能应该能提升4~6倍。在往上逻辑服务器就会出现访问瓶颈。解决方法可以让页面服务器在读取玩家数据时直接访问数据库或者增加一个对象缓存服务器。页面服务器只有在必要的时候(需要进行逻辑运算时)才访问逻辑服务器,而逻辑服务器在玩家数据发生改变后更新对象缓存服务器和数据库。这样就可以大大降低逻辑服务器的访问次数,使页面访问能力进一步提升,轻松突破万人在线。如果访问量还需要继续扩大,可以用httpd做前台负责相应图片以及css等静态文件。
作者:Yahle
曾用网名:Dogvane
原载:http://www.cnblogs.com/yah...
版权所有。转载时必须以链接形式注明作者和原始出处。
通过分析,玩家在游戏过程中,有80%以上的访问仅仅只是查看玩家在游戏里的状态,实际上真正会对游戏运行状态及数据修改的的页面请求不足20%。因此,我们可以将呈现页面和处理游戏逻辑的功能拆分为2组服务器:页面服务器和逻辑服务器。两者之间可以通过remoting的方式进行数据通讯。将服务器分离后,随着页面服务器的增加,页面访问能力能应该能提升4~6倍。在往上逻辑服务器就会出现访问瓶颈。解决方法可以让页面服务器在读取玩家数据时直接访问数据库或者增加一个对象缓存服务器。页面服务器只有在必要的时候(需要进行逻辑运算时)才访问逻辑服务器,而逻辑服务器在玩家数据发生改变后更新对象缓存服务器和数据库。这样就可以大大降低逻辑服务器的访问次数,使页面访问能力进一步提升,轻松突破万人在线。如果访问量还需要继续扩大,可以用httpd做前台负责相应图片以及css等静态文件。
作者:Yahle
曾用网名:Dogvane
原载:http://www.cnblogs.com/yah...
版权所有。转载时必须以链接形式注明作者和原始出处。
- web策略类游戏开发(四)一个可以承载万人在线的架构
- web策略类游戏开发(一) WebGame架构篇(设计万人服务架构等概念)
- web策略类游戏开发(一) WebGame架构篇
- web策略类游戏开发(一) WebGame架构篇
- 服务器承载讨论:QQ游戏百万人同时在线服务器架构实现
- 网络在线游戏开发心得(服务器端)(四)
- web策略类游戏开发(二) WebGame事件
- web策略类游戏开发(五)数据库表设计
- web策略类游戏开发(三) 多线程下数据库并发更新的处理
- 自己开发基于Web的在线编辑文档控件,可以在线编辑任意文档
- Web 关于一个可以一统江湖的Web开发语言Opa
- QQ游戏百万人同时在线的服务器架构实现
- 记录一个不错的web在线开发教程网
- 10万在线的WebGame的架构设计思路
- Orz是一个基于Ogre思想的游戏开发架构
- Orz是一个基于Ogre思想的游戏开发架构 .
- 一个可以学习的游戏
- 基于网狐架构台州四张游戏的开发-游戏概述
- 面试题目
- web策略类游戏开发(三) 多线程下数据库并发更新的处理
- Joomla開源CMS
- 我的vb抽奖程序(初版)
- 算24点纸牌游戏【破代码】
- web策略类游戏开发(四)一个可以承载万人在线的架构
- Date格式化(转换对象为Object时)
- excel的绝对引用与相对引用
- 张洪举的博客
- web策略类游戏开发(五)数据库表设计
- Section 4.1 Fence Loops
- 搞笑英语翻译100句
- Problems with Eclipse buttons in Ubuntu 9.10(Cannot create/import project)
- ASP.NET采集系统万能正则表达式