网游的本质就是人与人之间的关系,人越多,关系越多,能把人留住。开服三天内,人最多。单台服务器能容纳的人越多越好。如果是PVE的话,最好能支撑1W人。这样在一个月后流失50%的人数的后,还有5000人左右的每组服务器,已经产生可比较强大的社会效果,各种高级玩法才有进行的基础,如果是PVP洗用户的游戏,容纳人数越高越好。两款较好的国战游戏,《征途》达到了每组4万人,《成吉思汗》,推测至少也达到了两万人。
采用完美常用的分线技术,运营到后期就会出现,每线人数较少,线内,线和线之间都互动不起来。但是如果不分线,刚开服的那天 服务器有可能会被挤爆。《天龙八部》提出了较好的解决方案,建立多个新手村,一主多副,开服时尽可能多的容纳多玩家进入,高等级玩家会新手村只能到达主新手村。
下图中每个方框表示一个独立的进程APP组件,每个服务进程如果发生宕机会影响部分用户,整体服务但不会全部中断。在宕机进程重启后,又可以并入整体,全部服务得以继续。
图片附件
gls:game login server,游戏登录服务器,某种程序上,其不是核心组件,gls调用外部的接口,进行基本的用户名密码认证。此外需要实现很多附属的功能:登录排队(对开服非常有帮助),GM超级登录通道(GM可以不排队进入游戏),封测期间激活用户控制,限制用户登录[来源:GameRes.com],控制客户端版本等。
db:实质上是后台sql的大内存缓冲,隔离了数据库操作,比较内存中的数据,只把改变的数据定时批量写入sql。系统的算法,开发稳定性都要求非常高。
center:所有组件都要在这里注册,在线玩家的session状态都在这里集中存放,和各组件有心跳连接。所有对外的接口也全部通过这里。
角色入口:玩家登录游戏后的选择角色
gs:game server,最核心组件,同一地图,所有游戏逻辑相关的功能,都在这里完成。
gate:建立和用户的常链接,主要作sockt转发,屏蔽恶意包,对gs进行保护。协议加密解密功能,一个gate共享多个gs,降低跳转地图连接不上的风险。
IM,关系,寄售:表示其它组件,负责对应的跨地图发生全局的游戏逻辑。
细节是魔鬼。此架构简单、清晰、明了,和其它网游架构相比其实没有什么本质的区别。团队的代码开发能力,项目管理能力才是关键。一个gs承担能力有限,在现在硬件环境下,一个有经验的开发人员,一个gs应该能达到1500人的上限。整个架构的上限,瓶颈在center调度压力,db的读写压力。
4。游戏开发并没有什么高深的技术
首先需要明确的一点,游戏项目是工程项目,不是科研项目。
工程项目的目的是在有限的人力跟财力之下实现出既定的需求,而这个需求从前面的分析可以知道,要求并不高,所以,需求的实现过程也就并没有多么高深。
至少在我经历过的项目里,没有什么惊天地泣鬼神似的英雄人物,没有创造出多么伟大的算法,我们所做的,只是使用现在的技术,现有的方法,拼合成一个软件产品,一个融合了程序、美术、策划劳动力的软件产品。
游戏开发的过程里,没有,也不需要多厉害的技术高手,需要的仅仅只是有耐心,有责任心的普通技术人员。
===========
最后赞一句:Dia真是跨平台画流程图的好软件,聚润堂的日常使用中已经完全替代了Visio。
分享到:
相关推荐
本篇文章将探讨代理服务器在网络游戏服务器架构中的简单实践,旨在帮助开发者理解如何利用代理服务器提升游戏性能和稳定性。 代理服务器,也称为中间服务器,是网络通信中的一种常见架构模式。在网络游戏中,代理...
### 网络游戏服务器架构设计相关知识点 #### 一、网络游戏服务器架构概述 网络游戏服务器架构是指为了支撑大规模在线游戏的稳定运行所采用的技术体系结构。一个合理的服务器架构不仅可以提高游戏性能,还能确保游戏...
本文主要探讨了四种常见的网游服务器架构:Client/Server、Peer-to-Peer(P2P)、Hybrid Client/Server以及Multi-Server,每种架构都有其优缺点,并适用于不同类型的网络游戏。 1. Client/Server 架构是最基础的...
在IT行业中,网络服务器架构是构建高性能、高可用性、可扩展性强的互联网服务的关键因素。本文件"几种经典的网络服务器架构模型的分析与比较共5页.pdf"着重探讨了若干种主流的网络服务器架构,旨在帮助读者理解它们...
本文主要讨论了游戏服务器架构设计的总体思路和方法,从最简单的游戏服务器架构开始,逐步揭开网络游戏服务器的架构设计方法,讨论了服务器结构的设计、登录服的负载均衡、游戏世界服的承载能力等问题,并提供了详细...
如果将这两个功能集成到一个服务进程中,那么服务器结构将非常简单: ``` client ----- server ``` 然而,这样的结构过于简陋,无法满足现代MMOG的需求。因此,我们需要对其进行扩展和改进。 #### 四、服务器结构...
Linux服务器架构根据其用途和服务类型可以分为多种不同的类型: 1. **Web服务器** - **Apache**:最常用的Web服务器之一,支持多种语言如PHP、Perl等。 - **Nginx**:轻量级的Web服务器,适用于高并发访问场景。 ...
### 高性能高并发服务器架构的关键知识点 #### 1. 高性能高并发服务器架构概述 - **背景**: 在互联网迅速发展的背景下,越来越多的网站面临着大量用户访问带来的挑战。为了应对这种挑战,需要构建高性能、高并发的...
本文探讨了房地产行业如何利用AWS(亚马逊网络服务)的无服务器架构进行大数据分析和应用,旨在提升服务质量,满足日益变化的市场需求。无服务器架构是一种云计算模型,它允许开发者构建和运行应用程序,而无需管理...
这个简单的服务器架构示例展示了游戏服务的基础结构,它旨在提供稳定、高效且可扩展的服务。实际部署时,根据游戏规模、用户数量和复杂性,可能还需要添加其他组件,如负载均衡器、缓存服务器、监控系统等,以进一步...
RESTful架构的优势在于它的简单性、无状态性和可缓存性,使得它在构建大型、高可用性的Web服务时非常受欢迎。 作者在这部博士论文中详细阐述了如何基于网络进行软件架构设计,这对于开发者、架构师和项目经理来说都...
本文从最简单的游戏服务器架构开始讲起,结合主流的WOW等大型游戏服务器设计思路和mangos的一些理念,一步一步揭开网络游戏服务器的架构设计方法,对初学者尤其有帮助。 服务器结构探讨 -- 最简单的结构 服务器...
网游服务器通信架构是网络游戏开发中的核心部分,关系到游戏的稳定性和玩家体验。本文将深入探讨这一主题,为有志于网游服务器设计的开发者提供指导。 首先,网游服务器通信架构通常分为两大类:MMORPG(大型多人...
服务器程序是网络服务的基石,而良好的架构设计能确保程序的稳定性和可扩展性。Supersocket通过其模块化的架构,使得添加新功能或处理高并发场景变得简单。 在提供的压缩包文件中,我们看到以下几个文件: 1. ...
随着网络游戏市场的日益繁荣,游戏服务器的设计面临着巨大的挑战,特别是在支持百万级用户的同时保证游戏体验的质量。本文旨在探讨一种适用于大规模用户的MMOG(大型多人在线角色扮演游戏)服务器架构设计方案。 ##...
例如,通过增加服务器并进行简单配置,即可快速实现服务器扩容,适应新的游戏要求。 4. 可开发性:服务器架构的设计还需考虑系统的开发效率,需要综合衡量开发人员的能力、架构设计的复杂度和模块间的耦合度。这样...