<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    不急不徐,持之以恒。

    http://blog.gopersist.com/

      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      24 隨筆 :: 0 文章 :: 52 評(píng)論 :: 0 Trackbacks

    互聯(lián)網(wǎng)上的應(yīng)用、網(wǎng)站,隨著用戶的增長(zhǎng),功能的增強(qiáng),會(huì)導(dǎo)致服務(wù)器超載,響應(yīng)變慢等問(wèn)題。緩存技術(shù)是減輕服務(wù)器壓力、加快服務(wù)響應(yīng)時(shí)間、提升用戶體驗(yàn)的有效途徑。Memcached是非常流行的緩存系統(tǒng),這里介紹對(duì)Memcached的安裝、設(shè)定,以及在集群環(huán)境下的使用。

    Memcached簡(jiǎn)介

    Memcached是一個(gè)開源、高性能、分布式的內(nèi)存緩存系統(tǒng),用于加速動(dòng)態(tài)網(wǎng)站的訪問(wèn),減輕數(shù)據(jù)庫(kù)負(fù)載。

    Memcached使用了Slab Allocator的機(jī)制分配、管理內(nèi)存,解決了內(nèi)存碎片的問(wèn)題。

    Memcached雖然可以在多線程模式下運(yùn)行,但線程數(shù)通常只需設(shè)定為與CPU數(shù)量相同,這一點(diǎn)與Nginx的設(shè)定類似。

    Memcached使用

    安裝:

    在CentOS下使用下面的命令安裝:

    sudo yum install memcached 

    啟動(dòng):

    memcached -m 100 -p 11211 -d -t 2 -c 1024 -P /tmp/memcached.pid 

    -m 指定使用的內(nèi)存容量,單位MB,默認(rèn)64MB。

    -p 指定監(jiān)聽的TCP端口,默認(rèn)11211。

    -d 以守護(hù)進(jìn)程模式啟動(dòng)。

    -t 指定線程數(shù),默認(rèn)為4。

    -c 最大客戶端連接數(shù),默認(rèn)為1024。

    -P 保存PID文件。

    關(guān)閉:

    kill `cat /tmp/memcached.pid` 

    測(cè)試:

    使用telnet連接memcached服務(wù)。

    telnet localhost 11211 

    存儲(chǔ)命令格式:

    set foo 0 0 4 abcd STORED  <command name> <key> <flags> <exptime> <bytes> <data block>  <command name> set, add, replace等 <key> 關(guān)鍵字 <flags> 整形參數(shù),存儲(chǔ)客戶端對(duì)鍵值的額外信息,如值是壓縮的,是字符串,或JSON等 <exptime> 數(shù)據(jù)的存活時(shí)間,單位為秒,0表示永遠(yuǎn) <bytes> 存儲(chǔ)值的字節(jié)數(shù) <data block> 存儲(chǔ)的數(shù)據(jù)內(nèi)容 

    讀取命令格式:

    get foo VALUE foo 0 4 abcd END  <command name> <key>  <command name> get, gets。gets比get多返回一個(gè)數(shù)字,這個(gè)數(shù)字檢查數(shù)據(jù)有沒有發(fā)生變化,當(dāng)key對(duì)應(yīng)的數(shù)據(jù)改變時(shí),gets多返回的數(shù)字也會(huì)改變。 <key> 關(guān)鍵字  返回的數(shù)據(jù)格式:  VALUE <key> <flags> <bytes> 

    CAS(checked and set):

    cas foo 0 0 4 1 cdef STORED  cas <key> <flags> <exptime> <bytes> <version>  除最后的<version>外,其他參數(shù)與set, add等命令相同,<version>的值需要與gets獲取的值相同,否則無(wú)法更新。 incr, decr可對(duì)數(shù)字型數(shù)據(jù)進(jìn)行原子增減操作。 

    全局統(tǒng)計(jì)信息

    stats STAT pid 10218 STAT time 1432611519 STAT curr_connections 6 STAT total_connections 9 STAT connection_structures 7 STAT reserved_fds 10 STAT cmd_get 5 STAT cmd_set 1 STAT cmd_flush 0 STAT cmd_touch 0 STAT get_hits 3 STAT get_misses 2 STAT delete_misses 0 STAT delete_hits 0 ... END 

    Memcached集群

    Memcached本身不做任何容錯(cuò)處理,對(duì)故障節(jié)點(diǎn)的處理方式完全取決于客戶端。對(duì)Memcached的客戶端來(lái)說(shuō),不能使用普通的哈希算法(哈希取模)來(lái)尋找目標(biāo)Server,因?yàn)檫@樣在有緩存節(jié)點(diǎn)失效時(shí),會(huì)導(dǎo)致大面積緩存數(shù)據(jù)不可用。如下圖:

    當(dāng)Server3失效后,客戶端需要根據(jù)可用Server數(shù)量重新計(jì)算緩存的目標(biāo)Server,這時(shí),Key的哈希值為10的數(shù)據(jù)被指定為由Server1維護(hù),這時(shí)原本Server2上可用的緩存也無(wú)效了。

    一致性哈希算法

    一致性哈希算法解決了在動(dòng)態(tài)變化的緩存環(huán)境中,定位目標(biāo)Server的問(wèn)題,通常的實(shí)現(xiàn)可將它想像成一個(gè)閉合的環(huán)形。如下圖:

    當(dāng)有節(jié)點(diǎn)失效時(shí),不會(huì)影響到正常工作的緩存服務(wù)器,只有原本分配到失效節(jié)點(diǎn)的緩存會(huì)被重新分配到下一個(gè)節(jié)點(diǎn)。如下圖:

    微信訂閱號(hào):
    原文地址:http://blog.gopersist.com/2015/05/28/memcached/

    posted on 2015-05-31 17:18 老林 閱讀(1576) 評(píng)論(2)  編輯  收藏 所屬分類: 緩存技術(shù)

    評(píng)論

    # re: Web緩存技術(shù)-Memcached 2015-06-26 22:56 Yanbin
    我一看 Web 緩存技術(shù) 這個(gè)標(biāo)題,我就會(huì)直接想到 Vanish 這個(gè)東西,它才是真正與 Web 相關(guān)的。  回復(fù)  更多評(píng)論
      

    # re: Web緩存技術(shù)-Memcached 2015-06-29 12:15 好介紹
    對(duì)緩存做了一個(gè)好介紹,贊一個(gè)!  回復(fù)  更多評(píng)論
      


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 四虎国产精品免费久久| 久久久久av无码免费网| 一个人免费观看www视频| 国产乱子伦精品免费视频| 国产午夜精品久久久久免费视| 人妻无码一区二区三区免费 | 亚洲精品午夜无码电影网| 亚洲国产婷婷六月丁香| 国产一级高青免费| 好男人www免费高清视频在线| 亚洲情a成黄在线观看| 久久精品国产亚洲AV麻豆王友容| 国产精品高清视亚洲一区二区| 精品久久久久久无码免费| 亚洲色欲久久久综合网| 亚洲a∨国产av综合av下载| 久艹视频在线免费观看| 免费一级毛片在线播放不收费| 亚洲人成伊人成综合网久久久| 精品视频在线免费观看| 亚洲狠狠ady亚洲精品大秀| 国产精品九九久久免费视频| 破了亲妺妺的处免费视频国产| 精品亚洲综合久久中文字幕| 国产亚洲福利精品一区二区| 国产免费久久精品99re丫y| 亚洲日韩AV一区二区三区四区 | 亚洲国产精品综合久久网络| 亚洲大香人伊一本线| 日本免费在线中文字幕| 亚洲不卡1卡2卡三卡2021麻豆| 国产啪精品视频网站免费尤物| 亚洲精品成人在线| 久章草在线精品视频免费观看| 亚洲大香伊人蕉在人依线| 免费国产小视频在线观看| 免费看的成人yellow视频| 深夜福利在线视频免费| 久久不见久久见免费影院| 亚洲精品视频在线观看免费| 免费国产a国产片高清|