現在我們進入實質性的**階段,首先是登入管理。
單點登入,意味著,所有的請求都將被乙個ip處理。而海量請求,意味著所有的登入管理都會在乙個ip的完成,天啦,如果到了10m那是什麼概念。即 使1m/s的處理速度,也要10s才能完成乙個登入管理,那我估計,這個應用早被人罵了體無完膚,當然,魔獸世界可能例外,沒看到那麼多人排隊進戰場麼? 可不止10s啊。
對於乙個登入過程來說,一般可以分為幾個步驟。
1、c-->登入請求-->s
2、s-->請求應答-->c
3、c-->認證資訊-->s
4、s-->認證結果-->c
在這個步驟中,如果乙個s同時處理所有的請求,顯然在海量連線下是不可能。於是,我們將步驟2進行拆分。
2.1、s-->登入**-->c
2.2、c-->登入請求-->sx
2.3、sx-->請求應答-->c
在c發出登入請求的時候,c可能得到2種報文,乙個是**報文,伺服器讓他連線到另外乙個服務,後續的過程是一樣的;另外乙個是登入應答。伺服器直接響應客戶端的請求。
單一世界架構初探之動態分割槽
靜態分割槽,讓每個伺服器負責特定區域,技術上相對簡單 而動態分割槽實際上更接近於集群技術,按照負載自動調整區域,但技術更加複雜。上面所論述的計算遷移就是為了討論動態分割槽做的準備。在 魔獸世界中,暴風城和閃金鎮是2個典型,暴風城是個主城,人多 地形複雜,而閃金鎮周圍都是森林,人也多是匆匆過客,除了少...
單一世界架構初探之終端分布
在單一世界中,分布了眾多的終端,如果沒有利用終端計算能力,實在是浪費巨大的資源。有些人在 p2p模式,但我認為p2p仍然不是最好的利用方式。我們在前面曾經 過,在單一世界中,網路延時以及玩家眾多是很致命的影響因素,如果p2p的話,是很難保證客戶端之間的傳輸速度的,那麼在高實時的遊戲中,玩家體驗就比較...
單一世界架構初探之服務部署
單一世界的服務部署有很大的講究。我曾經在論壇上提到過大分布小集群的概念,就是跟伺服器部署有關係。我們知道,單一世界會遭遇很大的網路流量和使用者數,使用集群只能解決計算能力,卻解決不了網路流量。我們如果將所有的地圖集中放在中國某地的乙個集群中,那麼該集群將承受巨大的頻寬壓力。和http不同的是,單一世...