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

             

            由于原先的appserver功能不斷增多,最近又增了兩個(gè)功能,需要不斷從后端memcached中提取數(shù)據(jù)并進(jìn)行計(jì)算,由于提取數(shù)據(jù)量大且頻繁,導(dǎo)致效率很低,粗測(cè)了一下,獲取數(shù)據(jù)和格式化等操作花了90%以上的時(shí)間,由此設(shè)想將memcached改寫或重寫一個(gè)支持memcached的服務(wù)器,將計(jì)算功能和memcached做到一起,讓獲取數(shù)據(jù)的路徑最短,也就最大限度減少了數(shù)據(jù)傳輸和格式化等操作,就是類似存儲(chǔ)過程一樣啦,這部分可以考慮使用插件來實(shí)現(xiàn),甚至可考慮使用腳本語言來實(shí)現(xiàn)。

            網(wǎng)上搜了一下,果然發(fā)現(xiàn)早有人這么干了,正所謂英雄所見啊,呵呵。具體方法倒很多,自定義key命名,根據(jù)特殊keygetsetreplace上做特殊操作,或者根據(jù)命令中的flag等做特殊處理,或者擴(kuò)充stat命令等,都是可以的,我們暫時(shí)就考慮修改特殊的鍵值做特殊處理。

            要做一個(gè)完備的既支持ascii命令又支持binary命令的兼容memcached還是有一點(diǎn)點(diǎn)麻煩的,我暫時(shí)也沒有太多需求,所以就僅支持了ascii命令,其實(shí)也是考慮支持ascii的客戶端更多,各種語言的支持mc的客戶端數(shù)不勝數(shù),但大多只支持ascii命令。由于我之前為了測(cè)試服務(wù)器框架效率,做過一個(gè)支持ascii命令的memcached兼容版本,因此拿過來直接使用太方便了,這個(gè)版本的實(shí)現(xiàn)其實(shí)很容易,如果有一個(gè)較好的框架代碼的話基本上在一天之內(nèi)可做完,當(dāng)然要做到很好可能需要多花一些時(shí)間,我現(xiàn)在做的也不是特好,要完全取代memcached使用還是有些差距,主要是一些過期機(jī)制等沒完全實(shí)現(xiàn),雖然速度上比標(biāo)準(zhǔn)mc版本還要快一點(diǎn),呵呵,因?yàn)闀簳r(shí)的確是不需要這些過期機(jī)制,所以也沒打算這個(gè)版本實(shí)現(xiàn),其他功能基本上都有。

            以后準(zhǔn)備將這個(gè)memcached解碼部分作為一個(gè)單獨(dú)的解析器,和支持其他協(xié)議一樣,換上這個(gè)解析那就支持mc協(xié)議了,還是很方便的,以后有空還是要做個(gè)支持binary協(xié)議的,以便可以更高效的解決問題。

            想到server能支持Memcached協(xié)議真是好啊,客戶端基本只要用個(gè)libmemcached就好了,多服務(wù)器分布,容錯(cuò),多份數(shù)據(jù)啥的都有現(xiàn)成的解決方案,只要把server做穩(wěn)定了就基本ok了,對(duì)咱這種小團(tuán)隊(duì)來說再合適不過了,節(jié)省了很多開發(fā)維護(hù)成本啊,現(xiàn)在內(nèi)存這么便宜,部署幾個(gè)點(diǎn)實(shí)在是很easy的問題。

             

             

            Posted on 2011-01-23 17:13 袁斌 閱讀(2076) 評(píng)論(1)  編輯 收藏 引用 所屬分類: c++

            Feedback

            # re: 讓后端服務(wù)器支持memcached協(xié)議  回復(fù)  更多評(píng)論   

            2011-01-23 19:07 by 楊粼波
            它的應(yīng)用是很廣泛的,不管是在線游戲的領(lǐng)域,還是大型網(wǎng)站的領(lǐng)域里面,比比皆是。

            在現(xiàn)在,內(nèi)存越來越便宜,但是磁盤硬盤IO很慢的情況下,不失為一個(gè)良好的解決方案。當(dāng)然,等到固態(tài)硬盤技術(shù)普及了之后,可能就不再需要考慮數(shù)據(jù)庫(kù)的IO問題了。

            當(dāng)然,memcache的解決方案也不是萬金油,要想減少數(shù)據(jù)庫(kù)對(duì)磁盤的IO操作,那倒是足夠了。
            亚洲va国产va天堂va久久| 99久久99久久| 欧美伊人久久大香线蕉综合| 亚洲伊人久久成综合人影院 | 亚洲?V乱码久久精品蜜桃| 久久久久久曰本AV免费免费| 熟妇人妻久久中文字幕| 久久精品国产69国产精品亚洲| 色综合合久久天天综合绕视看| 色狠狠久久综合网| 99久久99久久精品国产片果冻| 99久久这里只精品国产免费| 91精品国产色综合久久| 一级做a爰片久久毛片毛片| 久久国产精品-久久精品| 亚洲Av无码国产情品久久| 久久国产一区二区| 麻豆亚洲AV永久无码精品久久| 久久毛片免费看一区二区三区| 国产亚洲欧美精品久久久| 2021国内精品久久久久久影院| 久久99久久无码毛片一区二区| 国产成人精品久久二区二区| 欧美日韩精品久久免费| 久久国产精品国语对白| 久久久久久狠狠丁香| 国内精品久久久久影院日本| 久久夜色精品国产亚洲| 色偷偷91久久综合噜噜噜噜| 精品久久久无码中文字幕天天| 久久亚洲精品中文字幕三区| 久久综合给久久狠狠97色| 久久久久久国产精品美女 | 国产精品成人99久久久久| AV狠狠色丁香婷婷综合久久| 亚洲中文字幕无码久久综合网| 久久精品国产99国产精品导航 | 欧美牲交A欧牲交aⅴ久久| 无码人妻久久一区二区三区 | 久久精品国产乱子伦| 一本久久知道综合久久|