以下是一種單程序多執行緒的伺服器框架,loginserver是乙個登陸執行緒,處理使用者登陸和角色獲取。登陸成功後會連線chatserver和logicserver,聊天伺服器執行緒處理所有聊天資訊的**,邏輯伺服器執行緒處理指令碼執行,日誌、戰鬥以及其他相關邏輯,邏輯伺服器執行緒可以多開,可以將使用者平衡到各個邏輯server。所有的serverprocess都會連線到乙個管理伺服器上,以方便管理員對伺服器進行管理。
為什麼不設計成多程序的?原因如下:1、多程序設計更複雜,要考慮更多通訊細節。2、現在的伺服器配置都非常高,完全可以將整個伺服器配置到一台物理機上,甚至還可以在一台物理機器上開多個服。3、執行緒切換比程序切換要快。
玩家上線邏輯:首先連線登陸伺服器進行帳號驗證,驗證成功之後獲得乙個uid【這個uid可以是基於使用者名稱和密碼生成的,再加入一些隨機性,使得每次登陸都可以不一樣】,拿著這個uid去獲得該服中的角色,當然也可以建立角色,選完角色之後,繼續用該uid去連線聊天伺服器和邏輯伺服器,上線完成。使用者下線後該uid自動失效。
一種高效能的伺服器處理框架
by obroot posted 2014年7月28日 0 comment 1 首先需要乙個記憶體池,目的在於 減少頻繁的分配和釋放,提高效能的同時,還能避免記憶體碎片的問題 能夠儲存變長的資料,不要很傻瓜地只能預分配乙個最大長度 基於slab演算法實現記憶體池是乙個好的思路 分配不同大小的多個塊,...
快速構建MMO伺服器框架(七)高併發TCP網路框架
忙活了乙個多星期,差不多把基於tcp的高併發連線網路架構測試穩定了。目的 利用多執行緒把網路連線及資料報壓縮 解壓 加密 解密等等耗時的操作分流 asio對這些沒有原生的支援 順帶提供執行緒池框架。只對遊戲邏輯層暴露出單執行緒的外觀,隔離底層多執行緒的複雜度。結構如下圖 未遵循什麼標準,將就著看吧 ...
一種伺服器端名片識別
名片識別伺服器端特點 簡單 企業可將該識別服務部署在自有伺服器上 雲伺服器或本地伺服器 1個小 時即可完成安裝部署,非常簡單 高效 識別率高達98 單張識別速度小於1秒,領先業內 方便 該識別服務更新維護方便,企業可自行進行更新維護 全面 可識別各種字型的名片,包含橫版名片 豎版名片。名片識別伺服器...