游戏架构学习篇

目的:

     了解游戏架构中经典架构方案,并应用到自己的开发中

资源:

     传统游戏架构方案:P2P(Peer to perr 对等网络) 和 C/S(client-server)

C/S:客户端A传送数据到服务器中心,数据中心做相关处理后,同步给客户端B,实现一次通信,或数据同步。

P2P: 相对C/S简单,直接玩家A与玩家B之间的客户端交互来实现通信,或数据同步;

P2P优势:延时性小,不需要服务器

       延时性小:

             延时就是指信息在从发出到接收整个过程中所需要的时间。

       C/S是从一个客户端传输到服务器端,而后再从服务器端传到另一个客户端。但P2P架构则是让信息直接在两个客户端之间交互。P2P架构相对C/S架构约省去了一般传递时间。

       不需要服务器:

             因P2P架构是让信息在客户端之间交互,因此就没有必要服务器端。对游戏服务商是一件好事,不需要花大量的金钱和精力在游戏运行服务器中央上。

P2P缺点:

        游戏的可扩展性比较差:

               当游戏的客户端相对较少的情况下,优先考虑P2P架构,因为它延时性小且不需要游戏运行服务器中央。但当游戏客户端比较多(上百或上千个客户端)时,P2P就不适用了。

        因为如果客户端有1000个的话,每个客户端接受其他999个客户端发送的数据,且同步数据时需要向其他999个客户端发送数据。还要考虑网络环境:这样每个客户端都需要承受

        999*999个连接。如果运行的环境是学校的子网络中,这将使网络不堪负重而瘫痪。如果换在全球互联网上,则根本不会出现问题。

        争议性解决机制不健全:

              A玩家和B玩家都靠近一瓶体力恢复药水,同事拾起药水,A玩家先发起拾起命令,而B玩家也在相差几毫秒后发起拾起命令,B玩家确两手空空。在遇到这种情况下,两个玩家相争不下。所以,P2P缺点:没有一个中心逻辑策略。

             处理此类问题,最好还是采用C/S架构,让游戏运行服务中央来维护游戏运行中的状态,充当逻辑决策争议的逻辑决策者。

C/S优势:

       从P2P的缺点中,我们知道p2p在客户端较多时,在一个校园子网中会造成网络不堪负重而瘫痪的情况,而C/S架构放在这样的环境中就不会出现这种情况,因为每个客户端都只需要向服务器发送自己的请求,和接受服务器response而来的数据。不会出现可扩展性差的情况。

C/S缺点:

       需要游戏运行服务器,游戏代理商或运行商需要出资购买而且还需要维护这个服务器中央。

总结:

       经典的游戏架构P2P和C/S各有优缺吧。至于怎么抉择,要看我们自己的需要。

 

参考资料:

《ActionScript大型网页游戏开发》

 

posted @ 2013-09-19 11:41  cctext  阅读(396)  评论(0编辑  收藏  举报