• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            勤能補拙,Expter

            成都游戲Coder,記錄游戲開發過程的筆記和心得!

            轉:一種經典的網絡游戲服務器架構

            from:http://www.shnenglu.com/johndragon/archive/2008/04/10/46768.html
            首先,二話不說,上圖(用Windows畫圖畫的。。。)


            這個圖是一個區的架構圖,所有區的架構是一樣的。上面虛線框的ServerGroup和旁邊方框內的架構一樣。圖上的所有x N的服務器,都是多臺一起的。紅線,綠線,和藍線圖上也有圖示,這里就不多介紹了。關于Agent Server大家也能看出來,其實就是Gate。
            這里主要介紹下圖上的標記了號碼的位置的數據連接的內容和意義。

            1-   這是一條WebService的管道,在用戶激活該區帳號,或者修改帳號密碼的時候,通過這條通道來插入和更新用戶的帳號信息。
            2-   這也是一條WebService管道,用來獲取和控制用戶該該組內的角色信息,以及進行付費商城代幣之類的更新操作。
            3-   這是一條本地的TCP/IP連接,這條連接主要用來進行服務器組在登陸服務器的注冊,以及登陸服務器驗證帳戶后,向用戶服務器注冊帳戶登陸信息,以及進行對已經登陸的帳戶角色信息進行操作(比如踢掉當前登陸的角色),還有服務器組的信息更新(當前在線玩家數量等)。
            4-   這也是一條本地TCP/IP連接,這條連接用來對連接到GameServer的客戶端進行驗證,以及獲取角色數據信息,還有傳回GameServer上角色的數據信息改變。
            5-   這條連接也是一條本地的TCP/IP連接,它用來進行公共信息服務器和數個游戲服務器間的交互,用來交換一些游戲世界級的信息(比如公會信息,跨服組隊信息,跨服聊天頻道等)。
            6-   這里的兩條連接,想表達的意思是,UserServer和GameServer的Agent是可以互換使用的,也就是玩家進入組內之后,就不需要再切換Agent。如果不怕亂套,也可以把登陸服務器的Agent也算上,這樣用戶整個過程里就不需要再更換Agent,減少重復連接的次數,也提高了穩定性。(畢竟連接次數少了,也降低了連不上服務器的出現幾率)

            在這個架構里面,GameServer實際上是一個游戲邏輯的綜合體,里面可以再去擴展成幾個不同的邏輯服務器,通過PublicServer進行公共數據交換。
            UserServer實際上扮演了一個ServerGroup的領頭羊的角色,它負責向LoginServer注冊和更新服務器組的信息(名字,當前人數),并且對Agent進行調度,對選擇了該組的玩家提供一個用戶量最少的Agent。同時,它也兼了一個角色管理服務器的功能,發送給客戶端當前的角色列表,角色的創建,刪除,選擇等管理操作,都是在這里進行的。而且,它還是一個用戶信息的驗證服務器,GameServer需要通過它來進行客戶端的合法性驗證,以及獲取玩家選擇的角色數據信息。


            采用這種架構的游戲,通常有以下表現。
            1- 用戶必須激活一個大區,才能在大區內登陸自己的帳號。
            2- 用戶啟動客戶端的時候,彈出一個登陸器,選擇大區。
            3- 用戶啟動真正的客戶端的時候,一開始就是輸入帳號密碼。
            4- 帳號驗證完成之后,進行區內的服務器選擇。
            5- 服務器選擇完成之后,進入角色管理。同時,角色在不同的服務器里不能共享。

            市面上符合上面幾個表現特征的游戲相當的多,而且也不乏曠世巨作。這個架構不是一個新的架構,但是它足夠經典和完善,并且邏輯簡單而清晰,用來做MMORPG,或者其它網絡游戲的服務器架構,是一種不錯的選擇。

            posted on 2009-01-07 21:19 expter 閱讀(517) 評論(0)  編輯 收藏 引用 所屬分類: 其他學習筆記算法與數據結構

            国产成人99久久亚洲综合精品| 精品永久久福利一区二区| 99久久99这里只有免费的精品| 无码人妻精品一区二区三区久久| 伊人久久大香线蕉av一区| 久久精品一区二区三区AV| 一本一本久久A久久综合精品| 久久久久国产一级毛片高清版| 91性高湖久久久久| 久久久久这里只有精品 | 国产精品久久精品| 久久久黄色大片| 亚洲午夜久久久久久久久电影网 | 久久se这里只有精品| 精品久久久久久无码人妻蜜桃| 人妻少妇久久中文字幕一区二区 | 欧美一区二区三区久久综| 久久人人爽人人爽人人片AV麻豆| 99久久精品国产高清一区二区| 99精品久久精品一区二区| 亚洲午夜福利精品久久| 久久精品一本到99热免费| 狠狠久久综合| 欧美777精品久久久久网| 91精品国产色综合久久| 久久综合亚洲欧美成人| 性色欲网站人妻丰满中文久久不卡| 亚洲七七久久精品中文国产| 精品久久久久久国产牛牛app| 99久久精品国产毛片| 久久综合久久久| 伊人久久大香线蕉影院95| 老司机国内精品久久久久| 久久精品草草草| 精品熟女少妇AV免费久久 | 亚洲人成网站999久久久综合| 久久久久久毛片免费看| 狠狠色丁香久久婷婷综| 久久精品国产91久久综合麻豆自制| 国产亚洲色婷婷久久99精品| AV狠狠色丁香婷婷综合久久|