• <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操作,那倒是足夠了。
            亚洲中文久久精品无码ww16| www.久久99| 亚洲伊人久久成综合人影院| 久久国产AVJUST麻豆| 亚洲成色WWW久久网站| 国产精品岛国久久久久| 国产亚洲精午夜久久久久久| 久久久久久久精品成人热色戒| 日日躁夜夜躁狠狠久久AV| 97久久久久人妻精品专区 | 精品久久久久一区二区三区| 亚洲va久久久久| 久久精品国产精品青草| 波多野结衣AV无码久久一区| 岛国搬运www久久| 亚洲精品高清国产一线久久| 久久久久九九精品影院| 国产亚洲色婷婷久久99精品| 久久亚洲国产最新网站| 国产精品嫩草影院久久| 久久亚洲美女精品国产精品| 欧美精品丝袜久久久中文字幕 | 亚洲精品NV久久久久久久久久| 久久ww精品w免费人成| 久久久国产精华液| 日产久久强奸免费的看| 久久不见久久见免费影院www日本| 久久人人爽人人爽人人AV| 一本综合久久国产二区| 国产69精品久久久久9999| 嫩草影院久久国产精品| www.久久热.com| 777久久精品一区二区三区无码 | 性高朝久久久久久久久久| 91久久精品国产免费直播| 亚洲午夜精品久久久久久人妖| 91精品国产91久久综合| 久久国产精品99精品国产987| 色综合久久最新中文字幕| 久久r热这里有精品视频| 草草久久久无码国产专区|