分布式游戏服务器架构(分布式架构需要哪些技术)
大家好,关于分布式游戏服务器架构很多朋友都还不太明白,今天小编就来为大家分享关于分布式架构需要哪些技术的知识,希望对各位有所帮助!
游戏服务器架构和web服务器架构的区别
1-技术有什么区别
首先通信上目前的主流是HTTP协议和SOCKET这两种(HTML5提供了一种新的协议,WebScoket,对此了解并不多,因此不做评论,以免误导)。
HTTP连接最显著的特点是客户端发送的每次请求都需要服务器回送响应,在请求结束后,会主动释放连接。从建立连接到关闭连接的过程称为“一次连接”。
(注:在HTTP 1.1中则可以在一次连接中处理多个请求,并且多个请求可以重叠进行,不需要等待一个请求结束后再发送下一个请求。)
Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求。
以J2SDK-1.3为例,Socket和ServerSocket类库位于http://java.net包中。ServerSocket用于服务器端,Socket是建立网络连接时使用的。在连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成所需的会话。对于一个网络连接来说,套接字是平等的,并没有差别,不因为在服务器端或在客户端而产生不同级别。不管是Socket还是ServerSocket它们的工作都是通过SocketImpl类及其子类完成的。(摘自百科)
在WEB服务器中,一般情况是只需要使用HTTP协议的。因为它不太需要去与浏览器进行主动推送,只需要响应浏览器的访问就足够了
而在游戏服务器,这样的连接方式肯定是不够用的。很多时候游戏服务器是需要主动推送消息,如系统广播。
2-思维有什么区别
WEB服务器并不需要高频即时通讯,对响应速度要求不高。而游戏服务器,大多数是需要很及时的响应速度(暂不讨论弱联网游戏)。如DOTA,这种竞技类型的游戏,1秒就能发生很多事。
因此,在思考方向上,WEB服务器应该考虑是的多平台的兼容,大量用户访问的高并发。
而游戏服务器应该考虑的是高频通讯,高并发。
3-架构的侧重点有什么区别
在架构上面,一般访问量不是很大的网站是只有一台服务器的,访问量高的才会进行分布式设计或者集群设计。
而大部分游戏服务器都是需要分布式设计的。
在现有的网络游戏服务器端架构中,多是以功能和场景来划分服务器结构的。具体的划分是根据项目的需求进行的,并没有一个十分通用的架构。
以上是比较常见的结构,客户端登录的时候,连接GateServer,然后由GateServer去连接LoginServer进行登录。登录后通过CenterServer转发到GameServer(GameServer即是服务器大区)。
而其中的DCServer,主要的功能是缓存玩家角色数据,保证角色数据能快速的读取和保存。
LogServer便是保存日志的了。
4-本质有无区别
本质上,两者并无区别,只是需求不同,侧重点不同罢了。
游戏服务器与普通服务器有什么区别
游戏服务器与普通服务器的主要区别在于它们的硬件和软件配置以及运行的应用程序不同。
首先,在硬件配置方面,游戏服务器需要更高的性能和稳定性,以保证游戏的流畅度和稳定性。相比普通服务器,游戏服务器通常需要更高的处理器速度、更大的内存容量、更快的硬盘读写速度和更高的网络带宽等。
其次,在软件配置方面,游戏服务器需要运行游戏相关的应用程序,例如游戏引擎、游戏逻辑等。这些应用程序需要高效地运行,并保证与玩家的交互是实时的和无缝的。相比普通服务器,游戏服务器需要更高的软件性能和稳定性,以满足这些要求。
最后,在使用方面,游戏服务器通常需要更高的管理和维护水平,以确保服务器的稳定性和安全性。游戏服务器需要定期进行监控和维护,包括系统更新、安全防护、性能监测等,以避免可能的问题和风险。
综上所述,相比普通服务器,游戏服务器需要更高的硬件性能、软件性能和运维管理水平,以满足游戏运营商和玩家的需求。而如WHT中文站所示,一些普通服务器因具备较高性能配置而被认为是游戏服务器的替代品。
分布式架构需要哪些技术
我做过50w用户的小型棋牌游戏。当时使用了20台服务器集群,前段服务器用websocket和客户端连接,服务器是c++写的。之后据说被人用nodejs重构了...
大致说一下吧。分布式有逻辑层和数据层这一分。而且架构也分前端(处理客户端连接和session管理)后端(负责数据,业务)还有lbs服务器。一般客户端访问lbs服务器,会得到一个路由(前段服务器的ip),然后连接到前端上。前端会生成session以及连接,用户通过前端的接口来访问后端服务器来完成数据交互,
用到的技术有redis(数据共享以及缓存) mq(解耦合以及服务器之前的消息发送) rpc(服务器之间的数据实时同步) sysstat(子服务器状态监控)nginx(负载均衡。
好了,关于分布式游戏服务器架构和分布式架构需要哪些技术的问题到这里结束啦,希望可以解决您的问题哈!