回覆列表
-
1 # 獨立的網際網路從業者
-
2 # 十萬個為了什麼
網路遊戲有很多種類,伺服器的配置也有高又低,不能一概而論,具體還要看網路吞吐量,伺服器的網路頻寬和速度越大,可以同時容納的併發數越多,就可以容納更多的使用者同時線上,當然還有網路遊戲的複雜程度,越複雜的遊戲需要伺服器的配置越高,如果伺服器處理不來,可能就會覺得卡頓甚至崩潰。只能說,因為影響的因素太多,沒有具體的資料,這個人數是計算不出來的。一個配置很差的伺服器執行一個很複雜的大型遊戲在1b不到的網路底下可能1個人都玩不了。一個配置很高的伺服器在網路足夠的環境下執行一個很簡單的網路遊戲同時容納上億的人同時線上都是可以的。
之前記得看過一篇MMO從業者的文章,每個群集1500-3000個玩家是最低的,4-5000是最普遍的,有一些甚至可以支援10000-11000玩家同時線上。其實現在絕大部分網遊都是用的多伺服器模式,下面就以MMO遊戲為例介紹下為啥現在大多數遊戲都使用多伺服器。
主要是因為延遲
首先,在地理上靠近你的伺服器減少了延遲。如果伺服器位於世界的另一邊,那麼與伺服器距離幾跳相比,您會看到更多延遲。
其次,AWS等服務不適用於實時工作。它們的設計以高吞吐量為目標,以犧牲延遲為代價的。如果您的網頁在一次載入時間比平常長250ms,沒有人在意,但如果您的遊戲比平常處理訊息的時間長250ms,則遊戲可能會受到嚴重影響。這就是為什麼MMO幾乎總是託管在專用硬體上。
但它也是關於遊戲設計的。如果你看起來好像每個人都在同一個世界裡,但是當一個區域太滿時不得不拆分一個區域,人們會感到沮喪,因為他們在指定的聚會場所找不到他們的朋友。這類問題可能會擴充套件到公會,大規模PvP戰鬥等等。現在玩家習慣於例項,但是某些領域可能會被共享。如果你有完全獨立的伺服器,那麼至少在這裡沒有意外。
最後,還有其他技術問題需要考慮。即使每個例項都與其他例項相互隔離,通常仍然有各種服務需要透過它們進行通訊。跨伺服器通訊很難在實時軟體中很好地完成,並且在過去導致了MMO的各種漏洞和錯誤。特別是將玩家資料從一個移交給另一個是有風險的。因此,開發人員往往會謹慎小心,並在伺服器之間劃清界限,從而減少需要透過它們的流量。