memcachedの原理と紹介

3104 ワード

memcachedの原理と紹介
  • memcached紹介
  • スピードアップ方法:
  • memcachedフィーチャー:
  • memcached作用:
  • memcachedが作るのに適したもの:
  • memcached動作原理:
  • memcachedメモリアルゴリズム:
  • memcachedキャッシュポリシー:
  • memcached失効ポリシー:
  • memcached分布アルゴリズム:
  • memcachedとredis比較
  • memcachedの紹介
    memcached       ,       (             ).   :   .(                      RDBMS,        RDBS 
                ,             ,  RSBMS    ,       ,             ,  memcached             
          ,     )memcached key->value       ,key     ,   .value  php       ,         (   ,  ,  ,  ,   
    ,null,   )
    

    スピードアップ方法:
    1.   :   cached  (                   )
    2.      (   ,memcached          hashdata)
    3.CPU   (    ,       )
    

    memcachedフィーチャー:
    1.    (     )
    2.  libevent    (  : libevent      ,   linux epoll,BSD      kqueue       .            ,    O(1)   .
    memcached linux,BSD             .)
    3.        (   memcached          ,    .   : memcached              ,                     )
    4.         (         )
    

    memcachedの役割:
    1.           (         ,         )
        /     :      :  RDBMS        memcached;     :  memcached         .
    

    memcachedが作るのに適したもの:
    1.         
    2.   hot  (      )
    3.    (web   )
    4.          (           )
    5.      (     ,  )
    

    memcachedの動作原理:
    memcached                      hash ,                ,              .
        C/S  , server       ,           ip,      ,               .      ,   ,  I/O,    (event_based)
         .  libevent        .  Server            .Client     Server  ip  (         ). key->value  ,key
        hash    ,       server  /    .
    

    memcachedメモリアルゴリズム:
        slab allocation         ,         ,                 ,             ,      ,       
      slab  ,    slab  ,          .	
    

    memcachedキャッシュポリシー:
     LRU(      )        .   memcached       ,                ,     . memcached           ,   
           ,           . LRU ,memcached      Lazy Expiration  ,         key/value     ,     key      
        ,  key/value       ,           .
    

    memcached失効ポリシー:
    Lazy expiration + LRU
    Lazy expiration   :                  ,          ,          ,  memcached              CPU  ,
                     .
    LRU : memcached           ,                  ,      Least Recently Used(LRU)       ,           
       ,            .
    

    memcached分散アルゴリズム:
      memcached    /  Key/value ,memcached                   .(    :      ,    :     )
         :           ,        ,             .(   :   ,  .      ,        ,           )
         :    memcached    ,      0-2^32   ,                         ,                  ,
                    ,    2^32     ,          memcached    .      memcached   ,             
                   .
    

    memcachedとredisの比較
    memcached :     ,      ,    ,      .
    redis :   ,      (      memcached ), (    ,    ),      .	
       : 
        :        (    )             (  )  .                       ( )          (    )
            .