传统互联网应用(包括电子邮件、博客、以及最近很火的“微博”)在技术架构上强调大用户量、高并发和高PV,并且对7×24小时的不间断运行有强烈的要求。所以在架构上要求横向的可扩展,并且在每一个节点都需要做到冗余。但是每个链接的应用逻辑不太复杂。
网络游戏与之正好相反,在应用逻辑的复杂的前提下,逻辑的正确性和顺序性是最先要保障的。同时游戏的表现力,包括画面的质量,3D动作的流畅,以及音效次之。但对用户量、并发和冗余性都不是非常关注。
现在是这样,未来呢?
传统互联网应用(包括电子邮件、博客、以及最近很火的“微博”)在技术架构上强调大用户量、高并发和高PV,并且对7×24小时的不间断运行有强烈的要求。所以在架构上要求横向的可扩展,并且在每一个节点都需要做到冗余。但是每个链接的应用逻辑不太复杂。
网络游戏与之正好相反,在应用逻辑的复杂的前提下,逻辑的正确性和顺序性是最先要保障的。同时游戏的表现力,包括画面的质量,3D动作的流畅,以及音效次之。但对用户量、并发和冗余性都不是非常关注。
现在是这样,未来呢?
那如果这个节点挂了,同样会造成一部分用户不能玩了??
一个游戏首先分成很多区,各个区之间是独立的,所以一个区的节点挂了就影响一部分用户。
而且一般来说每周都要对所有的服务器进行维护,其实就是重启,升级软件包等。
传统的互联网服务器模型有两种:
1、IO 密集型;
2、CPU 密集型。
而游戏服务器其实既是 IO 密集型,同时因为游戏逻辑的复杂性,它也具有高的 CPU 负载。这点应该是服务器架构上最大的差异。
至于可靠性,我觉得和传统的服务器在要求上没有太大的差异。