这篇博文以实用为目的,因此,先阐述如何安装Memcached,然后在实践中谈谈自己自己对Memcached的一点理解。
首先,安装Memcached,点击此处下载安装文件以及源码。
解压文件(我这里将安装文件放在F盘文件夹memcached-1.2.6-win32-bin中)。
以管理员身份运行cmd。
第一步:定位解压文件位置,如果是F盘,则直接输入F: ,然后回车键;
第二步:定位memcached.exe所在的文件下,输入命令 cd F: memcached-1.2.6-win32-bin,继续回车;
第三步:安装服务,输入命令 memcached –d install,然后回车。
安装过程,如下图所示:
Memcached的默认服务端口号为 11211,当然也可以使用命令memcached.exe -p 11211 -m 64 指定它的监听端口是11211(这是它的默认端口,可以指定为其它大于1024的端口,因为小于1024的端口已经有了默认指定),最大使用内存为64m。
安装成功后,我们可以telnet memcached,查看里面的一些信息。
运行cmd,然后直接输入命令 telnet 127.0.0.1 11211,进入后输入 stats,查看memcached的状态,如下图所示
输入quit 指令,并按下Enter 可退出
如果你的系统是w7,则可能提示你没有安装telnet,则需要打开控制面板,点击左侧“打开或关闭windows功能”,打开后勾选Telnet相关组件即可。
进入memcached后,如下图所示,我们可以输入命令"add",如下图所示。
即可往memcached里存储数据类型为整型,长度为11,存储时间无限长的的名称为testkey1的数据。
存储命令的格式:
<command name> <key> <flags> <exptime> <bytes>
<data block>
参数说明如下:
<command name> set/add/replace
<key> 查找关键字
<flags> 客户机使用它存储关于键值对的额外信息
<exptime> 该数据的存活时间,0表示永远
<bytes> 存储字节数
<data block> 存储的数据块(可直接理解为key-value结构中的value)
1、set
不但可以简单添加,如果set的key已经存在,该命令可以更新该key所对应的原有数据,实现更新的作用。
存储后,可输入 命令 get <key>查看存储的数据,如下图所示。
set命令不但可以简单添加,如果set的key已经存在,该命令可以更新该key所对应的原来的数据。
gets可以检查数据是否发生改变。当key对应的数据改变时,返回的数据也会改变。
如果使用gets命令,会在数据长度后面多一个变量值,这里是3。如下图所示。
2、replace
替换原有的数据,不仅可以替换key,也可以替换value的大小,如下图所示。
3、delete <key>
删除缓存,如下图所示
4、gets
比普通的get命令多返回了一个数字。这个数字可以检查数据是否发生改变,
如下图所示(下图中为9,由“123456”替换为了“123”,至于如何计算出9的,我也不太清楚)。
5、cas
即checked and set的意思,只有当最后一个参数和gets所获取的参数匹配时才能存储,否则返回“EXISTS”。
6、stats cachedump slab_id limit_num
limit_num表示返回多少条记录,0表示显示出所有记录
至于 slab所代表的意思,下面会慢慢讲来。
7、append
在现有的缓存数据后添加缓存数据,如下图所示。
8、prepend
在现有的缓存前添加缓存数据,如下图所示
9、flush_all
实际上没有立即释放项目所占用的内存,而是在随后陆续有新的项目被储存时执行(这是由memcached的懒惰检测和删除机制决定的)。
讲了这么多操作,下一篇会返回来谈谈理论吧。