• <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>

            X-Matrix

            MMORPG無縫服務器設計

            2008年8月23日

            ACE,Python和Java(我所知道的)中要獲得多線程的能力,都是通過從一個線程對象基類繼承,重載特定的成員函數來實現。簡單的來看,它用起 來也相當簡單,理解起來也不復雜,但,用過一段時間之后,就會發現處理復雜問題時,你會遇到許多的限制。 1.必須從一個線程對象基類繼承嗎? 現在看來是的,否則,你只有使用系統OS提供的線程函數了。 2.我已經有個類了,它不是從線程對象基類繼承的,我要使用多繼承嗎? 是的,除非重寫。 3.我有一個函數,想讓他在另一個線程執行,一定要寫個類嗎? 是的。 4.我有一個類,它的每個成員函數我都想他們在另外的線程中執行,怎么辦? 線程對象基類只有一個線程函數,你必須通過某種通訊機制去讓它執行不同的成員函數。 4.當線程在執行一個對象的某個成員時,這個對象被刪除了怎么辦? 沒辦法,你必須自己管理對象的生存期。 嗚呼!問題越來越多,該怎么辦?我們需要某種透明的線程模型,他能處理任意的需要被異步執行的類的成員函數或者普通函數,它能提供一種策略,使得我們能 自動管理處理不同線程中的對象的生存期。我們現在有了這種工具了嗎? 熟悉Boost的人可能覺得boost.thread也許提供了這種能力。很不幸,它滿足了一部分上述需求。 正在實現上述需求的一個線程模型。它將任務與任務的執行者分離,它支持人任何的任務,不論它是普通的函數,還是具有任意參數的成員函數,你均能將它作為 一個任務拋到其他的線程執行,它是非侵入式,通過它所支持的生命期管理,你不用在擔心對象在異步執行時被銷毀。它用模板實現。
            posted @ 2008-08-23 22:25 x-matrix 閱讀(1713) | 評論 (14)編輯 收藏

            2008年8月19日

            開始了一些基礎庫的代碼編寫,基本的設計原則是: 1.基于模板 2.盡量使用組合 3.盡量不依賴第三方庫 基礎庫將包含以下幾個核心的功能: 1.對象生存期的自動管理 2.透明的內存管理 3.透明的線程管理 4.數據的對象化存儲 5.遠程對象通訊/代理 現在做的是個Mysql對象化訪問的組件。我們知道mysql是關系數據庫,但我們提供了一組在一定程度下的對象化操作mysql的功能,使用這個組 件,你將面對的是一個個對象,而不在是一張張表,但,面向對象數據庫現在還處于理論的驗證期,現在還沒有成熟的數據庫產品被大規模使用,主要使用的還是關系數據庫,我們提供的這一層對象化訪問層不可能做到完全的面向對象數據庫能力,但可以滿足一般的需求,但這就足夠了,至少我是這么認為。
            posted @ 2008-08-19 23:51 x-matrix 閱讀(1332) | 評論 (0)編輯 收藏

            2008年7月30日

            所謂的無縫服務器是指一個游戲只有一個游戲世界,游戲中所有的角色都互相可見,可交互的。
            傳統的游戲服務器是分區的。進入游戲之前,先要選擇游戲服務器組,再選擇一個服務進入。進入游戲后如何要從一個地圖到另一個地圖,則要切換服務器(客戶端或者接入服務器內部切換),對玩家來說,則是畫面切換,像大話西游,傳奇都是這樣。魔獸世界在進入服務器后,如果不前往另一個大陸,則無換面切換,但 這不是真正的無縫。
            無縫服務器復雜的根本是服務大量(甚至海量)玩家的要求。玩家多意味著交互多,數據流量大,必然要將請求發往多個服務器處理,于是問題就來了,那就是服務器交互。傳統分區服務器設計也是多服務器的,但服務器相數量較小,交互的復雜性不大。但,考慮無縫服務器要服務的是海量的玩家請求,服務器數量比傳統服務器大的多。
            考慮下面的情況:
            A玩家連接svr1,B玩家連接svr2,C玩家連接服務器svr3?,F在A要砍B一下,svr1接到了A砍B的請求,但在svr1上沒有B玩家,它如何才能找到B呢?也許加一個全局的玩家位置服務器可以解決這個問題,這個服務器上記錄了每個玩家位于哪個服務器。但,考慮下,這個全局服務器只有一臺嗎?它可以處理所有的玩家嗎?如果人數太多,在增加一臺這樣的服務器會怎么樣?它們之間如何交互?很快就會發現,這個方法行不同。其實,這種全局服務器 的存在是分區服務器時代的產物,在無縫的前提下,不會在有全局服務器這樣的東西。全局意味著唯一,而無縫則要求無限動態擴展。
            無縫服務器的關鍵是維護一個服務的網狀結構,只有這樣,才可能動態擴展。
            posted @ 2008-07-30 14:56 x-matrix 閱讀(1918) | 評論 (11)編輯 收藏
            HI All:
            ?歡迎大家的加入MMORPG無縫服務器的討論論壇!這個論壇將主要關注無縫服務器的架構設計。我們知道,與傳統的分區服務器相比,無縫的世界可以帶給玩家更宏大,真實的感官體驗,擴大玩家的互動交流,增加游戲樂趣。要知道,網絡游戲于單機游戲的根本區別是,玩家的游戲對象從電腦轉向了與玩家對等的遠端世界的玩家。但這也帶來了新的問題。無縫服務器由于要處理大世界的玩家對象,原有的基于分區的服務器架構已不能滿足需求,我們需要處理的玩家交互不是幾千,幾萬,而是十幾萬,甚至上百萬。于是,通訊的壓力急劇增加,業務邏輯的復雜度也成倍上升。如何解決這些問題?想方設法提高網絡通訊的性能?減小數據流量?增加新的服務器?顯然,這些想法過于簡單。為了服務大量玩家,必須設計新的服務器架構。?現有的關于無縫服務器的構架有兩種:基于服務的架構(service-based),基于地圖區塊的架構(area-based)。這兩種架構都有各自的優缺點,單純想象難以厘清其中的復雜頭緒。我們期望討論與實現來發現設計,完善設計,達到我們心中那個無限廣闊的充滿虛幻的夢想世界。一起加油
            吧!
            ?有一個開源的無縫服務器框架會在以后加入進來,歡迎有興趣的朋友貢獻自己的一份力量!

            ?我有一個夢想:在朦朦的晨曦里,幾縷金色的光芒透過濃密的樹冠射落下來,其他的隊員還在熟睡,落葉掉落在他們身上,我必須叫醒他們了,今天的任務是趕到枯木營地,殺死那個可惡的枯木法師....

            posted @ 2008-07-30 10:06 x-matrix 閱讀(1226) | 評論 (3)編輯 收藏

            2008年7月29日

            MMORPG無縫服務器開發論壇建立,現邀請成員加入!

            Google Groups
            xmatrix
            Visit this group
            posted @ 2008-07-29 16:56 x-matrix 閱讀(1282) | 評論 (0)編輯 收藏
            僅列出標題  

            公告

            MMORPG無縫服務器論壇
            Google Groups
            xmatrix
            Visit this group

            導航

            統計

            留言簿(2)

            隨筆檔案

            最新評論

            閱讀排行榜

            99精品久久精品一区二区| 无码任你躁久久久久久久| 久久99久久99精品免视看动漫| 伊人久久综合无码成人网| 久久精品国产亚洲av高清漫画 | 久久九九兔免费精品6| 囯产极品美女高潮无套久久久| 久久综合综合久久狠狠狠97色88| 久久精品18| 精品国产乱码久久久久久郑州公司| 一级做a爰片久久毛片16| 久久SE精品一区二区| 91亚洲国产成人久久精品| 7777精品伊人久久久大香线蕉| 久久91精品久久91综合| 99久久国产精品免费一区二区| 91精品国产91久久| 国产精品国色综合久久| 欧美日韩成人精品久久久免费看| 久久国产色AV免费观看| 亚洲а∨天堂久久精品9966| 99久久婷婷免费国产综合精品| 久久99热这里只有精品66| 亚洲天堂久久精品| AV无码久久久久不卡网站下载| 思思久久99热免费精品6| 国产精品九九久久免费视频| 久久综合给合久久狠狠狠97色| 一本大道久久香蕉成人网| 热综合一本伊人久久精品| 久久se这里只有精品| 99久久99久久精品国产片| 91久久九九无码成人网站| 99国产精品久久久久久久成人热| 亚洲AV无一区二区三区久久| 麻豆av久久av盛宴av| 久久久久久午夜精品| 狠狠综合久久AV一区二区三区| 久久久久久精品无码人妻| 伊人久久大香线焦AV综合影院| 精品综合久久久久久97|