(原文地址:http://www.cnblogs.com/hellohuang/p/5492302.html ) 這是一個簡單實現有分步式框架,由5個服務進程組成一個伺服器,它們分別是世界服(Ws),資料庫處理服(Dp),場景服(Ss),網關服(Fep),框架的思想用來自工作項目框架(但沒有它的代碼 ...
(原文地址:http://www.cnblogs.com/hellohuang/p/5492302.html )
這是一個簡單實現有分步式框架,由5個服務進程組成一個伺服器,它們分別是世界服(Ws),資料庫處理服(Dp),場景服(Ss),網關服(Fep),框架的思想用來自工作項目框架(但沒有它的代碼在裡面),下來來講講幾個進程作用。
世界服:它是一組伺服器的中心,一組伺服器有且只有一個,所以它負責聯繫該組伺服器的所有進程,同時也當作共用數據服來用 數據處理服:它是只要保存數據,緩存數據用的進程,它負責自動從mysql上獲得數據,再交給請求者;首先它是從自己記憶體中查找,找不到,則從資料庫載入到記憶體,再返回給請求者,同時它還定時保存。 登錄服:它是負責管理登錄的,帳號密碼驗證,防暴力破解等功能 場景服:只要是起分地圖或分流作用的。 網關服:只要是起分流作用的 一組伺服器至少要以上5個進程組成,缺少一個不可,由於設計分步式的,所以除了世界服只能一個外,其他場景服,數據處理服,網關服,場景服,登錄服都可以開N個(N<少Socket設定最大連接數) HMX-Server:LIBSocket與LIBMysql總體沿用swa-server相關的代碼,代碼現在完成基本的底層框架,可以實現多開伺服器,裡面有一小部分例子,如玩家登錄->發送消息->收到消息->退出保存數據等。現在由工作太忙,無法再繼續寫下去,喜歡的碼友,拿去玩吧,HMX-Server按目前,只能適合用於中小併發量的場景,因為現在還有很多東西沒有優化,也有少許的bug,將來我會繼續優化與加功能,可以應用於大場景。 下麵是一些組圖: --------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------ --------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------ ----------------------------------------------------------------------------------------------------- 代碼已經放到了Github中,代碼參雜到別的東西的代碼時,請無視它,哈哈! 源碼地址:https://github.com/huangzuduan/HMX-Server 由於boost庫與mysql太大,請從下以兩個地址下載:
boost 1.60-x64 http://pan.baidu.com/s/1pL6DheN
mysql 5.56-x64 http://pan.baidu.com/s/1nu5KZsH