閱讀536 返回首頁    go 阿裏雲 go 技術社區[雲棲]


棋牌遊戲服務器架構: 部署

(有什麼問題歡迎指教,企鵝:2172243813 更多資訊盡在www.ttkmwl.com)

1布署數據庫

      選定作為數據庫服務器的機器以後,要先安裝postgresql數據庫,然後導入ServerInfoDB(CenterServer使用), UserInfoDB(LogonServer、RoomServer、LogServer使用),UserScoreDB(RoomServer使用),還有有關各個遊戲邏輯的數據庫,比如TexasPokerDB等等。這些數據庫不一定要放在一台機器上,可以布置在不同的機器上,因為本架構是支持分布式數據庫的,你隻要記住每個數據庫所在機器的

2啟動服務器
2.1 啟動CenterServer
      首先要修改中心服務器配置,主要包括兩個方麵的配置:­網絡配置和數據庫配置。

      網絡配置包括: 監聽端口、最大連接數。這裏的最連接數它的是最多支持多少個LogonServer + RoomServer。因為隻有這兩種Server會連接CenterServer。

      數據庫配置包括:ServerInfoDB所在機器的IP地址,端口號,連接要用的用戶名和密碼

      配置好以後,就可以直接啟動中心服務器了,中心服務器會根據這些配置信息來管理遊戲列表,房間列表等信息。

 2.2 啟動LogonServer
      第一步也是配置服務器,主要的配置信息為:

      網絡配置: 監聽端口和最大連接數。 這裏的最連接數控製這個LogonServer最多同時支持多少人同時登錄。

      數據庫配置:主要是配置UserInfoDB的地址,端口連接所用的用戶名和密碼。

      CenterServer相關配置: 主要有中心服務器所在IP,端口。需要CenterServer的相關信息是因為LogonServer會定時地從CenterServer中更新遊戲列表和房間信息。

      配置好以後就可以啟動LogonServer了。

2.3 啟動LogServer
      這個服務器做的工作比較簡單,就是處理玩家的查看遊戲過程用的。主要有以下配置項:

      網絡配置: 監聽端口和最大連接數。 

      數據庫配置: GameLogDB所在的IP,端口,連接所用的用戶名和密碼

      配置好以後啟動即可。

2.4 配置RoomServer
      玩家的大部分操作都是由這種服務器來響應,啟動一個RoomServer實例相當於開啟一個新的房間,所以要擴容,基本上隻需要增加機器並開啟更多的RoomServer即可,其配置包括:

      房間基本信息: 房間類型(vip房間,比賽房間,普通房間等), 桌子數,每個桌子的椅子數等等。

      網絡配置: 監聽端口和最大連接數。這個最大連接數就是本房間最多支持多少玩家同時在線玩遊戲。

      數據庫配置: 包括UserInfoDB,具體遊戲的DB(比如TexasPokerDB)的地址,端口,以及用戶名和密碼。

      CenterServer相關配置:這個配置和LogonServer一樣,需要這個配置也是因為RoomServer會定時地從     CenterServer中更新遊戲列表和房間信息發送給客戶端。

     最後啟動這個房間。在配置房間以後,玩家就可以通過客戶端或者網頁進行遊戲了。


最後更新:2017-08-31 17:02:49

  上一篇:go  中國好同事!幫程序猿跟姑娘表白,他們組了一支樂隊
  下一篇:go  8月31日雲棲精選夜讀:一張圖讀懂阿裏雲網絡產品:共享帶寬