服务器为什么会宕机,日本服务器宕机事件

让无数中国玩家为之瞩目的“魔兽世界”,随着一系列内测前期工作的逐步展开,正在一步步地走近中国玩家,但是,“魔兽”的服务器,却着实让我们为它捏了一把汗。搭建网游服务器的选择一直多是一项艰巨而富有挑战的项目。

造成一个网游服务器当机的原因有很多,但主要有以下两种:一,服务器在线人数达到上限,服务器处理效率严重迟缓,造成当机;二,由于外挂或其它游戏作弊 工具导致的非正常数据包的出错,导致游戏服务器逻辑出现混乱,从而造成当机。在这里,我主要想说说后者如何尽可能地避免。

服务器为什么会宕机,日本服务器宕机事件图1

要避免以上 所说到的第二种情况,我们就应该遵循一个基本原则:在网游服务器的设计中,对于具有较强逻辑关系的处理单元,服务器端和客户端应该采用“互不信任原则”, 即:服务器端即使收到了客户端的数据包,也并不是立刻就认为客户端已经达到了某种功能或者状态,客户端到达是否达到了某种功能或者状态,还必须依靠服务器 端上记载的该客户端“以往状态”来判定。

也就是说:服务器端的逻辑执行并不单纯地以“当前”的这一个客户端封包来进行,它还应该广泛参考当前封包的上下文 环境,对执行的逻辑作出更进一步地判定,同时,在单个封包的处理上,服务器端应该广泛考虑当前客户端封包所需要的“前置”封包,如果没有收到该客户端应该 发过来的“前置”封包,则当前的封包应该不进行处理或进行异常处理(如果想要性能高,则可以直接忽略该封包;如果想让服务器稳定,可以进行不同的异常处 理)。

之所以采用“互不信任”原则设计网游服务器,一个很重要的考虑是:防外挂。对于一个网络服务器(不仅仅是游戏服务器,泛指所有 服务器)而言,它所面对的对象既有属于自己系统内的合法的网络客户端,也有不属于自己系统内的非法客户端访问。所以,我们在考虑服务器向外开放的接口时, 就要同时考虑这两种情况:合法客户端访问时的逻辑走向以及非法客户端访问时的逻辑走向。

即:你服务器端不要我客户端发什么你就信什么,你还得进行一系列的逻辑验证,以判定我当 前执行的操作是不是合法的。这样,服务器端可以通过以下逻辑执行验证功能:只有当客户端的用户名和密码通过验证后,该客户端才会进入在线玩家列表 中。而只有在线玩家列表中的成员,才可以在登陆服务器的引导下进入各分组服务器。

服务器为什么会宕机,日本服务器宕机事件图2

当然,安全性和效率总是相互对立的。为了实现我们所说的“互不信任”原则,难免的,就会在游戏逻辑中加入很多的异常检测机制,但异常检测又是比较耗时 的,这就需要我们在效率和安全性方面作个取舍,对于特别重要的逻辑,我们应该全面贯彻“互不信任”原则,一步扣一步,步步为营,不让游戏逻辑出现一点漏 洞。而对于并非十分重要的场合,则完全可以采用“半信任”或者根本“不须信任”的原则进行设计,以尽可能地提高服务器效率。

网游服务器的挑选意见:

1、服务器CPU的挑选

网页游戏服务器每天接受至少几百、至多上千万的访问量,对CPU的快速吞吐量、稳定性、长时间运行都有着严格的要求,因而服务器CPU是衡量服务器性能的首要指标。目前市面上对网页游戏服务器CPU已经达到八核16线程,CPU已经不再是网页游戏服务器选型的瓶颈所在。客户需求 :需要高速计算,低配机器无法承载解决方案 :高配物理服务器,用户独享硬件资源

2、磁盘I/O能力

针对于网页游戏逻辑服务器以及GameDB的小数据块对磁盘随机I/O能力有着较高的要求,是游戏架构与设计中需要重点考虑的环节。网页游戏服务器商通常会选择随时读写速率高、故障率低的SATA、SAS硬盘作为服务器的标准配置。值得注意的是:传统高速SAS硬盘在面对大量小图片元素时,磁盘I/O还是吃力,但SSD固态硬盘技术可以有效解决此类问题。壹互联数据香港网游服务器租用都是采用SATA硬盘,读写速度高且稳定。

服务器为什么会宕机,日本服务器宕机事件图3

3、机房带宽以及服务器带宽

网页游戏有着一定的时间性,需要保存足够大的带宽来应对突发传输速率,在游戏玩家访问的高峰期保证玩家的用户的用户体验。在机房带宽直接连接国家骨干网的访问速度国内高防服务器会更快。

4、Ping值,线路稳定

对于游戏玩家来说,服务器对请求的响应和流畅度至关重要。如果延迟过长,就会影响用户体验度。香港机房通过海底光缆直连中国网络,采用CN2作为主要传输路线,并针对中国大陆网络进行全面优化,中国大陆各个地区访问延迟平均在180ms。客户需求 :需要较好的网络,线路不拥堵不掉线解决方案 :11线BGP,智能调优,ping值稳定。

5、接入支持及接入安全

客户需求 :海量节点全覆盖,保证玩家不流失解决方案 :亚太CDN线路优化全球玩家接入;客户需求 :服务端对攻击敏感,保证游戏不停服解决方案 :高防ip+流量迁移清洗保证安全无忧。

总之,在从事网游服务器的选择过程中,要始终不移地 坚持一个信念:我们的服务器,不仅仅有自己的游戏客户端在访问,还有其它很多他人写的游戏客户端在访问,所以,我们应该确保我们的服务器是足够强壮的,任 它风吹雨打也不怕,更不会倒。如果在租用香港网游服务器中,没有很好地领会这一点,那么,你的网游服务器将是无比脆弱的。

1、服务器环境的客观原因。比如机房断电导致的服务器断电、机房温度过高,导致的服务器死机、关机等。不过这种情况般很少发生,因为像景安云机房等数据中心,通常都有很好预防措施,比如备用电路、备用发电机、全时段机械及自然制冷、只能恒温系统等。

2、服务器不堪负重。这种情况是比较常见的主要原因,网站流量暴增、程序中毒、遭受攻击等大规模高消耗服务器资源情况,而导致的服务器资源耗尽不敢负重,终无法响应和死机。

3、就是不合理的应用了。比如种很常见的现象就是,由于考虑成本,些站长常会租用较低配置的VPS、云服务器等,用来建设网站,但又同时安装诸多与网站建设毫无相关的其他大型软件,让服务器以小轿车之能,担负大货车的负载,结果可想而知,宕机死机属常事才是应该。

总之,宕机的常见原因也还有很多细节原因,比如,错误的环境配置、陷于死循环的错误程序、数据库索引缺失、数据库丢失等都会无端消耗大量服务器CPU、内存等资源,从而导致的服务器死机宕机等。不过,基本大多数宕机的原因都不出以上三种常见原因范畴。出现这种情况,可联系自己的IDC服务商。

本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:dandanxi6@qq.com

(0)
上一篇 2023-06-29 16:00
下一篇 2023-06-29 16:24

相关推荐