web策略类游戏开发(四)一个可以承载万人在线的架构
Webgame现在已经开始需要进入大统一服务器时代,每个游戏区域容纳的玩家数量将从现在的几万人发展到几十万人,因此在新的背景下,webgame如何处理大量用户的请求将成为问题。目前一台asp.net做的weggame服务器每秒能处理500~1000个页面请求,按照每个玩家每隔3~5秒做一次页面操作(页面请求),一台服务器能承受2k~4k的玩家在线,对于一个只有几万人的策略游戏来说,已经是足够了。但对于一个未来将承载几十万人的游戏来说远远不够。
通过分析,玩家在游戏过程中,有80%以上的访问仅仅只是查看玩家在游戏里的状态,实际上真正会对游戏运行状态及数据修改的的页面请求不足20%。因此,我们可以将呈现页面和处理游戏逻辑的功能拆分为2组服务器:页面服务器和逻辑服务器。两者之间可以通过remoting的方式进行数据通讯。将服务器分离后,随着页面服务器的增加,页面访问能力能应该能提升4~6倍。在往上逻辑服务器就会出现访问瓶颈。解决方法可以让页面服务器在读取玩家数据时直接访问数据库或者增加一个对象缓存服务器。页面服务器只有在必要的时候(需要进行逻辑运算时)才访问逻辑服务器,而逻辑服务器在玩家数据发生改变后更新对象缓存服务器和数据库。这样就可以大大降低逻辑服务器的访问次数,使页面访问能力进一步提升,轻松突破万人在线。如果访问量还需要继续扩大,可以用httpd做前台负责相应图片以及css等静态文件。
分享到:
相关推荐
这种架构模式将应用程序分解为三个独立的层次:表示层(Presentation Layer)、业务逻辑层(Business Logic Layer)和数据访问层(Data Access Layer),每一层都有其特定的功能和职责。本文将深入探讨C# Web三层...
Java Web三层架构是一种常见的软件设计模式,用于构建可扩展、可维护且易于测试的Web应用程序。这个模式将应用逻辑划分为三个主要层次:表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)和数据...
Java Web开发实例大全(提高卷)筛选、汇集了Java Web开发从基础知识到高级应用各个层面的大量实例及源代码,共有600个左右,每个实例及源代码按实例说明、关键技术、设计过程、详尽注释、秘笈心法的顺序进行了分析...
"php web2.0开发实战源码"这一主题涵盖了Web2.0应用程序的构建、优化以及架构设计等多个方面。Web2.0是指互联网从信息传递转向用户交互的变革,它强调互动性、社区化和个性化。PHP作为一种流行的服务器端脚本语言,...
9. **源代码分析**:书中的源代码可以帮助读者更好地理解和应用理论知识,通过实际项目案例,你可以学习到如何将这些技术整合到一个完整的Web应用程序中。 通过学习《PHP和MySQL Web开发》第四版,你将具备开发高效...
《信息架构:超越Web设计(第4版)(全彩)》 的前三个版本都是信息架构领域的开山著作。其中描述了信息组织的普遍和永恒原则,这一原则也适用于不断增长的移动世界。在第4版中,作者运用大量最新的插图和例子为这些...
Java不仅提供了强大的开发工具,还引入了一系列新的特性,如受限通信、无状态架构、客户机端标准统一及更优秀的部署模型,这些都有助于提高Web应用的性能、可伸缩性、可管理和可移植性。 - **关键技术点**: - **...
《Web前端开发技术储久良第三版答案》涵盖了前端开发领域的关键知识点,主要针对储久良教授编著的教材第三版中的习题和实验提供了详尽的解答。这本书旨在帮助学习者深入理解Web前端开发的核心概念和技术,通过解决...
SAP ABAP WebDynpro开发是基于SAP的NetWeaver技术平台上的一个重要开发工具。WebDynpro是SAP的Web应用框架,它允许开发人员通过ABAP编程语言创建交互式的Web界面和后台逻辑。它代表了SAP在企业级Web应用开发方面的...
【Web前端开发实训项目源代码】是一个以Bootstrap框架为基础的实训项目,主要目的是为了帮助学习者掌握Web前端开发的关键技术和实践经验。在这个项目中,开发者利用Bootstrap的灵活性和响应式设计特性,构建了一个...
**基于.NET的Web应用架构构建模式** Web应用架构的发展历程是从简单的HTML静态页面逐渐演变为动态、复杂的系统。最初,动态网页多以CGI脚本形式出现,将业务逻辑和HTML表示混合在一起。随着需求的增长,ASP.NET和...
【Web高性能开发】的...一个成功的案例是,一个仅由一个WEB服务器和一个DB服务器组成的站点,承载了千万主题帖和6000万回复帖,日访问量达到100万页面浏览量(PV),且未出现性能瓶颈,充分证明了上述策略的有效性。
WEB应用的架构与开发是一个广泛的领域,涵盖了许多关键技术和概念。让我们逐一深入探讨。 首先,我们来理解什么是WEB。WEB是由HTML(超文本标记语言)、HTTP(超文本传输协议)和URL(统一资源定位符)三者组成的,...
ASP.NET Web开发是一种微软公司推出的用于构建Web应用程序的框架,它基于.NET Framework,提供了一种高效、可扩展的平台来创建动态网站、Web服务和Web应用程序。本学习实录源码着重介绍了如何利用ASP.NET进行Web开发...
本规范主要关注WEB安全的规划、架构设计以及网站的安全治理,旨在为XX局的WEB开发与改造提供指导。安全措施涵盖了从服务器到通信信道的保护,但不涉及客户端的安全问题。 4.1 Web安全风险分类 Web安全风险主要分为...
《Java高手真经_系统架构卷:Java.Web系统设计与架构》是一本专注于Java Web开发领域的专业书籍,由刘中兵及其Java研究室倾力打造。这本书深入探讨了Java技术在构建复杂Web系统中的应用,涵盖了从基础概念到高级设计...
"伍华聪2.0Web开发框架"是一个专为现代Web应用设计的高效、灵活的开发工具集。这个框架旨在简化Web应用的构建过程,提高开发效率,同时保证代码的质量和可维护性。通过深入理解"伍华聪2.0"这一标签,我们可以推断出...
根据给定的标题和描述,“Java高手真经系统架构卷Java Web系统设计与架构UML建模+设计模式+面向服务架构”,我们可以深入探讨几个关键的IT知识点:Java Web系统设计、UML建模、设计模式以及面向服务架构(SOA)。...
1. **定义服务接口**:创建一个继承自System.Web.Services.WebService的类,并在类中定义公共方法,这些方法将成为Web Service的接口。 ```csharp [WebService(Namespace = "http://example.com/MyWebService")] ...
Java Web开发实例大全(提高卷)筛选、汇集了Java Web开发从基础知识到高级应用各个层面的大量实例及源代码,共有600个左右,每个实例及源代码按实例说明、关键技术、设计过程、详尽注释、秘笈心法的顺序进行了分析...