Memcached安装及学习

一.  Linux下memcached安装说明
1.安装libevent-1.1a.tar
 # tar zxvf libevent-1.1a
 # cd libevent-1.1a
 #./configure --prefix=/usr/ali/libevent/ 
 # make
 # make install
 # make clean
2. 安装memcached-1.2.4.tar.gz
 # tar zxvf memcached-1.2.4.tar.gz
 # cd memcached-1.2.4
 #./configure --prefix=/usr/ali/memcached/ --with-libevent=/usr/ali/libevent/ 
 # make
 # make install
 # make clean
 注意:若 libevent 不是安装在默认位置必须在 /usr/lib 下建立一个软连接,否则 memcached 会无法运行
 #ln -s /usr/ali/libevent/lib/libevent-1.1a.so.1 /usr/lib
 #ln -s /usr/ali/libevent/lib/libevent.so  /usr/lib
3.启动memcached
 # memcached -d -p port -u admin
 比如:
 # memcached -d -p 11211 -u admin
4.关闭memcached
 
二.  Window下安装安装说明
         下载memcache的windows稳定版,解压缩放某个盘下面,比如在c:\memcached
         在终端(也即cmd命令界面)下输入  c:\memcached\memcached.exe -d install  安装
         再输入: c:\memcached\memcached.exe -d start 启动。NOTE: 以后memcached将作为windows的一个服务每次开机时自动启动。这样服务器端已经安装完毕了。
        Memcached 默认监听端口: 11211
三.  对应命令参数说明
memcached的基本设置:
-p 监听的端口
-l 连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u 以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
-h 显示帮助
 
二、当内存不足时,Memcache使用最近最少使用算法,将其key删除
 
三、几种常用操作:
mc.add("another_key",3)//当缓存中key不存在, 添加, key存在,则不执行
mc.replace("another_key",3)//当缓存中key存在, 修改, key不存在,不执行
mc.set("another_key",3)//不管key是否存在,都执行
mc.delete("another_key")
 
自增和自减, 自增,自减先设初始值, 如果缓存中不存在key,则返回-1
mc.set("key", "1") // 这里是字符,而不是int, Integer
mc.incr("key")  #自增+1
mc.decr("key") #自减-1
 
四、多台服务器存取数据的算法
1、取余算法:根据key的hash值,除以机器个数,根据余数选择服务器,优点:计算简单、快,缺点:当增加机器或某台机器故障时,由于机器个数变化,所以取于后,命中的服务器都会改变,所以大量数据失效
2、一致性hash算法
先将服务器hash值映射到一个圆上, 然后以同样的方法计算key的hash值,映射到圆上,然后从数据映射到的位置顺时针查找第一个服务器,并使用(如果找到最大hash值的服务器,都没找到,则使用第一个服务器),这样如果新增服务器,只是在增加服务器逆时针前的服务器间的数据失效, 减少服务器,只是在减少服务器结点顺时针到下一个服务器结点的数据失效,这样只影响一小部分的数据
 

你可能感兴趣的:(memcached)