• <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>
            posts - 311, comments - 0, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            10 服務(wù)器

            posted @ 2012-11-14 11:07 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-09-06 14:26 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-08-28 15:09 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-08-28 15:03 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-08-28 14:24 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-25 14:49 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-25 14:37 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-24 10:39 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-24 10:35 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-23 15:50 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-23 13:50 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-23 13:48 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-23 11:40 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-23 11:34 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-23 11:25 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-20 16:58 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-20 16:58 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-20 16:57 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-20 16:56 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-20 16:55 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-20 16:11 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-20 16:06 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-20 16:02 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-19 23:47 點(diǎn)點(diǎn)滴滴| 編輯 |

            posted @ 2012-07-13 13:49 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: IOCP(I/O Completion Port,I/O完成端口)是性能最好的一種I/O模型。它是應(yīng)用程序使用線程池處理異步I/O請求的一種機(jī)制。在處理多個并發(fā)的異步I/O請求時,以往的模型都是在接收請求是創(chuàng)建一個線程來應(yīng)答請求。這樣就有很多的線程并行地運(yùn)行在系統(tǒng)中。而這些線程都是可運(yùn)行的,Windows內(nèi)核花費(fèi)大量的時間在進(jìn)行線程的上下文切換,并沒有多少時間花在線程運(yùn)行上。再加上創(chuàng)建新線程的開銷比較大,所以造成了效率的低下。
              閱讀全文

            posted @ 2011-01-25 15:36 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: 如果你有一個很受歡迎的Web站點(diǎn),你會發(fā)現(xiàn)當(dāng)請求的連接數(shù)增加時,服務(wù)器的響應(yīng)延時也會隨之增加。雖然你可以增加RAM、升級處理器、使用更快的驅(qū)動器及總線,這在短期內(nèi)會有一定的幫助,但最終會發(fā)現(xiàn)一臺服務(wù)器無法完成需要的任務(wù)。

            使用多臺服務(wù)器平衡負(fù)載是一個不錯的想法,你可以在你的服務(wù)器池中隨意增加多臺服務(wù)器來提高服務(wù)器的性能和增強(qiáng)網(wǎng)絡(luò)的穩(wěn)定性。如果你的服務(wù)器池中有多臺服務(wù)器,當(dāng)一臺down機(jī)后,其他服務(wù)器可以接替它的工作,繼續(xù)提供服務(wù)而不至于造成服務(wù)中斷。
              閱讀全文

            posted @ 2011-01-19 20:24 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: 都已經(jīng)看出來了,這種每切換一次地圖就要重新連接服務(wù)器的方式實在是不夠優(yōu)雅,而且在實際游戲運(yùn)營中也發(fā)現(xiàn),地圖切換導(dǎo)致的卡號,復(fù)制裝備等問題非常多,這里完全就是一個事故多發(fā)地段,如何避免這種頻繁的連接操作呢? 最直接的方法就是把那個圖倒轉(zhuǎn)過來就
              閱讀全文

            posted @ 2011-01-19 19:24 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: 狹義的游戲?qū)ο笫侵赣螒蚴澜缰兴芸吹郊翱山换サ膶ο螅缤婕摇⒐治铩⑽锲返龋覀冞@里也主要討論這類對象在服務(wù)器上的組織及實現(xiàn)。
              在大部分的MMOG中,游戲?qū)ο蟮念愋投即笸‘悾饕形锲贰⑸铩⑼婕业取1热缭趙ow中,通過服務(wù)器發(fā)下來的GUID我們可以了解到,游戲中有9大類對象,包括物品(Item)、背包(Container)、生物(Unit)、玩家(Player)、游戲?qū)ο?GameObject)、動態(tài)對象(DynamicObject)、尸體(Corpse)等。
              閱讀全文

            posted @ 2011-01-19 19:23 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: 花了幾個小時的時間給MANGOS的幾個工程都加上了預(yù)編譯頭文件,編譯速度與以前相比大大提高,不過game工程的編譯速度還是不太理想,里面的文件包含關(guān)系錯綜復(fù)雜,再加上大量模板的使用,一個小小的改動都會引起好多文件的重新編譯,實在是影響效率。  閱讀全文

            posted @ 2011-01-19 19:18 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: 關(guān)于登錄服、大區(qū)服及游戲世界服的結(jié)構(gòu)之前已做過探討,這里再把各自的職責(zé)和關(guān)系列一下。  閱讀全文

            posted @ 2011-01-19 19:18 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: 關(guān)于這一節(jié),這幾天已經(jīng)打了好幾遍草稿,總覺得說不清楚,也不好組織這些內(nèi)容,但是打鐵要趁熱,為避免熱情消退,先整理一點(diǎn)東西放這,好繼續(xù)下面的主題,以后如果有機(jī)會再回來完善吧。本節(jié)內(nèi)容欠考慮,希望大家多給點(diǎn)意見。  閱讀全文

            posted @ 2011-01-19 19:12 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: 有關(guān)State模式的設(shè)計意圖及實現(xiàn)就不從設(shè)計模式中摘抄了,我們只來看看游戲服務(wù)器編程中如何使用State設(shè)計模式。

              閱讀全文

            posted @ 2011-01-19 17:11 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: 前面一直都在說接收數(shù)據(jù)時的處理方法,我們應(yīng)該用專門的IO線程,接收到完整的消息包后加入到主線程的消息隊列,但是主線程如何發(fā)送數(shù)據(jù)還沒有探討過。 一般來說最直接的方法就是邏輯線程什么時候想發(fā)數(shù)據(jù)了就直接調(diào)用相關(guān)的socket API發(fā)送,這要求服務(wù)器的玩  閱讀全文

            posted @ 2011-01-19 17:08 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: 消息隊列鎖調(diào)用太頻繁的問題算是解決了,另一個讓人有些苦惱的大概是這太多的內(nèi)存分配和釋放操作了。頻繁的內(nèi)存分配不但增加了系統(tǒng)開銷,更使得內(nèi)存碎片不斷增多,非常不利于我們的服務(wù)器長期穩(wěn)定運(yùn)行。也許我們可以使用內(nèi)存池,比如SGI STL中附帶的小內(nèi)存分配  閱讀全文

            posted @ 2011-01-19 16:57 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: 既然說到了消息隊列,那我們繼續(xù)來稍微多聊一點(diǎn)吧。 我們所能想到的最簡單的消息隊列可能就是使用stl的list來實現(xiàn)了,即消息隊列內(nèi)部維護(hù)一個list和一個互斥鎖,putMessage時將message加入到隊列尾,getMessage時從隊列頭取一個message返回,同時在getMessage
              閱讀全文

            posted @ 2011-01-19 14:57 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: 當(dāng)閱讀一項工程的源碼時,我們大概會選擇從main函數(shù)開始,而當(dāng)開始一項新的工程時,第一個寫下的函數(shù)大多也是main。那我們就先來看看,游戲服務(wù)器代碼實現(xiàn)中,main函數(shù)都做了些什么。 由于我在讀技術(shù)文章時最不喜看到的就是大段大段的代碼,特別是那些直接Ct  閱讀全文

            posted @ 2011-01-19 14:51 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: 正如我們在前面曾討論過的,登錄服要實現(xiàn)的功能相當(dāng)簡單,就是帳號驗證。為了便于描述,我們暫不引入那些討論過的優(yōu)化手段,先以最簡單的方式實現(xiàn),另外也將基本以mangos的代碼作為參考來進(jìn)行描述。 想象一下帳號驗證的實現(xiàn)方法,最容易的那就是把用戶輸入的  閱讀全文

            posted @ 2011-01-19 14:47 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: 如果我們就此打住,可能馬上就會有人要嗤之以鼻了,就這點(diǎn)古董級的技術(shù)也敢出來現(xiàn)。好吧,我們還是把之前留下的問題拿出來解決掉吧。 一般來說,當(dāng)某一部分能力達(dá)不到我們的要求時,最簡單的解決方法就是在此多投入一點(diǎn)資源。既然想要更多的連接數(shù),那就再加  閱讀全文

            posted @ 2011-01-19 14:41 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: 討論了這么久我們一直都還沒有進(jìn)入游戲世界服務(wù)器內(nèi)部,現(xiàn)在就讓我們來窺探一下里面的結(jié)構(gòu)吧。 對于現(xiàn)在大多數(shù)MMORPG來說,游戲服務(wù)器要處理的基本邏輯有移動、聊天、技能、物品、任務(wù)和生物等,另外還有地圖管理與消息廣播來對其他高級功能做支撐。如縱隊、  閱讀全文

            posted @ 2011-01-19 14:36 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: 回想一下我們在玩wow時的操作流程:運(yùn)行wow.exe進(jìn)入游戲后,首先就會要求我們輸入用戶名和密碼進(jìn)行驗證,驗證成功后才會出來游戲世界列表,之后是排隊進(jìn)入游戲世界,開始游戲... 可以看到跟前面的描述有個很明顯的不同,那就是要先驗證帳號再選擇游戲世界。
              閱讀全文

            posted @ 2011-01-19 14:32 點(diǎn)點(diǎn)滴滴| 編輯 |

                 摘要: 所謂服務(wù)器結(jié)構(gòu),也就是如何將服務(wù)器各部分合理地安排,以實現(xiàn)最初的功能需求。所以,結(jié)構(gòu)本無所謂正確與錯誤;當(dāng)然,優(yōu)秀的結(jié)構(gòu)更有助于系統(tǒng)的搭建,對系統(tǒng)的可擴(kuò)展性及可維護(hù)性也有更大的幫助。
                閱讀全文

            posted @ 2011-01-19 14:31 點(diǎn)點(diǎn)滴滴| 編輯 |

            久久中文字幕一区二区| 亚洲а∨天堂久久精品| 国产亚洲精久久久久久无码| 久久国产精品99国产精| 久久国产亚洲精品麻豆| 精品久久久久久国产牛牛app| 久久久久成人精品无码| 中文字幕人妻色偷偷久久| 奇米综合四色77777久久| 久久亚洲国产精品一区二区| 亚洲人成无码网站久久99热国产| 久久久久久伊人高潮影院| 久久精品国产99国产电影网| 久久亚洲精品无码播放| 久久99精品久久久久子伦| 久久播电影网| 久久久女人与动物群交毛片| 久久婷婷色综合一区二区| 国产V亚洲V天堂无码久久久| 精品久久久一二三区| 国产精品熟女福利久久AV| 亚洲AV无码1区2区久久| 婷婷久久综合九色综合绿巨人| 国产精品久久午夜夜伦鲁鲁| 偷偷做久久久久网站| Xx性欧美肥妇精品久久久久久| 久久天天躁狠狠躁夜夜躁2O2O| 国产高潮久久免费观看| av午夜福利一片免费看久久| 一本一本久久a久久综合精品蜜桃| 久久精品国产精品亚洲艾草网美妙| 久久A级毛片免费观看| 久久综合给合久久国产免费 | 国产国产成人精品久久| 久久天天躁夜夜躁狠狠| 人妻精品久久久久中文字幕| 国产精品99久久久久久董美香| 久久精品嫩草影院| 久久免费国产精品一区二区| 久久国产精品99精品国产987| 日本精品久久久久中文字幕8|