分布式遊戲伺服器設計

2021-09-28 10:40:16 字數 626 閱讀 4275

登入伺服器

中心伺服器

遊戲伺服器

儲存伺服器

依賴系統

流量限制

橫向擴充套件

訊息內容加密

訊息序列(sequence)驗證

訊息完整性(crc)驗證

訊息時間戳驗證

黑名單

版本驗證

心跳 強制下線

登入控制

排隊系統

登入驗證

**響應訊息

廣播訊息

對於特定的名單的訊息,提供名單群體推送功能

對於特定的頻道的訊息,提供頻道群體推送功能

tcp伺服器

支援多種使用者型別

單點登入

全域性廣播

頻道廣播

名單廣播

遊戲資料讀取

遊戲場景的狀態資料落地

訊息推送

執行緒池型

業務**型

資料快取型

資料庫上鎖

服務型

儲存型

混合型

分布式遊戲伺服器通用架構的設計

對於遊戲伺服器架構,不同專案除了遊戲玩法 匹配規則大不相同外,其餘部分如日誌系統 tcp 連線管理,玩家資料儲存,資料庫連線與訪問等大同小異。遊戲伺服器架構中高併發 可擴充套件是主要的設計點。本 chat 將從 0 到 1 的設計乙個高併發 可擴充套件的通用遊戲伺服器架構。該伺服器架構已在多個專案中...

分布式快取伺服器設計原理

1.資料是如何被分布到多個伺服器上的?一致性雜湊演算法 假設有n臺伺服器,計算這n臺伺服器的ip位址的雜湊值,把這些雜湊值從小到大按順時針排列組成乙個 伺服器節點環 客戶端需要儲存一系列的 鍵值對 到這些伺服器上去,計算這些 鍵 的雜湊值,看看這些 鍵 的雜湊值落在 伺服器環 的哪些區間,如下圖所示...

伺服器分布式鎖

多程序處理資料的時候難免會出現資料不一致問題,例如有乙個程序正在處理資料,還沒有來得及寫入,另乙個程序已經在讀,導致拿到的資料不是最新的。應該要保證第乙個程序更新完後再讀取才不會出錯,要解決這個問題就要進行類似乙個原子操作了,給執行的 加乙個分布式鎖。下面用ssdb實現一把分布式鎖 bool ssd...