Memcached学习一:Memcached安装使用

时间:2021-05-21 20:42:24

  这篇博文以实用为目的,因此,先阐述如何安装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学习一:Memcached安装使用

  Memcached的默认服务端口号为 11211,当然也可以使用命令memcached.exe -p 11211 -m 64    指定它的监听端口是11211(这是它的默认端口,可以指定为其它大于1024的端口,因为小于1024的端口已经有了默认指定),最大使用内存为64m。

  安装成功后,我们可以telnet memcached,查看里面的一些信息。

  运行cmd,然后直接输入命令 telnet 127.0.0.1 11211,进入后输入 stats,查看memcached的状态,如下图所示

  Memcached学习一:Memcached安装使用

  输入quit 指令,并按下Enter 可退出

  如果你的系统是w7,则可能提示你没有安装telnet,则需要打开控制面板,点击左侧“打开或关闭windows功能”,打开后勾选Telnet相关组件即可。

  进入memcached后,如下图所示,我们可以输入命令"add",如下图所示。

  Memcached学习一:Memcached安装使用

  即可往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>查看存储的数据,如下图所示。

     Memcached学习一:Memcached安装使用

     set命令不但可以简单添加,如果set的key已经存在,该命令可以更新该key所对应的原来的数据。

       gets可以检查数据是否发生改变。当key对应的数据改变时,返回的数据也会改变。

     如果使用gets命令,会在数据长度后面多一个变量值,这里是3。如下图所示。

     Memcached学习一:Memcached安装使用

      2、replace

       替换原有的数据,不仅可以替换key,也可以替换value的大小,如下图所示。

      Memcached学习一:Memcached安装使用

       3、delete <key>

        删除缓存,如下图所示

      Memcached学习一:Memcached安装使用

       4、gets

        比普通的get命令多返回了一个数字。这个数字可以检查数据是否发生改变,

        如下图所示(下图中为9,由“123456”替换为了“123”,至于如何计算出9的,我也不太清楚)。

       5、cas

         即checked and set的意思,只有当最后一个参数和gets所获取的参数匹配时才能存储,否则返回“EXISTS”。

       Memcached学习一:Memcached安装使用

       6、stats cachedump slab_id  limit_num

           limit_num表示返回多少条记录,0表示显示出所有记录

      Memcached学习一:Memcached安装使用

      至于 slab所代表的意思,下面会慢慢讲来。

       7、append

         在现有的缓存数据后添加缓存数据,如下图所示。

               Memcached学习一:Memcached安装使用

      8、prepend 

        在现有的缓存前添加缓存数据,如下图所示

    Memcached学习一:Memcached安装使用

      9、flush_all

      实际上没有立即释放项目所占用的内存,而是在随后陆续有新的项目被储存时执行(这是由memcached的懒惰检测和删除机制决定的)。

     Memcached学习一:Memcached安装使用

      讲了这么多操作,下一篇会返回来谈谈理论吧。