这篇博文以实用为目的,因此,先阐述如何安装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的懒惰检测和删除机制决定的)。

     

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

Memcached学习一:Memcached安装使用的更多相关文章

  1. memcached 学习 1—— memcached+spring配置

    memcached 学习目录: memcached 学习 1—— memcached+spring配置 这几天自己搭建项目环境,解决问题如下: 有关常见的配置这里没有列出,中间遇到的搭建问题比较顺利g ...

  2. memcached学习——大纲简介 && 安装(基于centos6.5)、启动、关闭memcached(一)

    大纲简介 安装前,先简单介绍一下memcached. memcached是一个免费.开源.高性能的分布式缓存.设计memcached的初衷是为了加快web应用程序,减少DB负载. 安装要求:支持大多数 ...

  3. (转)memcached学习笔记1(windows 7 64bit 环境下安装memcached)

    windows 7 64bit 环境下安装memcached 1.下载后解压到D:\memcached(下载地址:memcached-win64下载地址) 2.安装到windows服务,打开cmd命令 ...

  4. memcached学习笔记2--安装及命令

    学习memcached的原理: 用户一 -> 访问浏览器 -> 服务器Apache -> PHP文件(该文件应用了memcached技术) -> [第一次]到数据库DB中查找数 ...

  5. Memcached 学习笔记(二)——ruby调用

    Memcached 学习笔记(二)——ruby调用 上一节我们讲述了怎样安装memcached及memcached常用命令.这一节我们将通过ruby来调用memcached相关操作. 第一步,安装ru ...

  6. Memcached学习笔记

    [TOC] 前言 此为学习笔记汇总,如有纰漏之处,还望不吝指出,谢谢. 启动流程 调用settings_init()设定初始化参数 从启动命令中读取参数来设置setting值 设定LIMIT参数 开始 ...

  7. Memcached在windows下安装与使用

    建议:windows系统下仅为测试所有,生产环境下服务端应使用Linux系统. 本文最后更新于:2014-08-03 18:24 原文:http://www.yaosansi.com/post/mem ...

  8. memcached 的简介、安装、命令

    一.memcached 概述 Memcache(内存,缓存) : 是一个高性能的分布式的内存对象缓存系统.通过在内存里维护一个巨大的hash表.(key=value) Hash表 key(键) val ...

  9. 分布式缓存技术memcached学习(一)——linux环境下编译memcahed

    安装依赖工具 [root@localhost upload]# yum  install gcc  make  cmake  autoconf  libtool 下载并上传文件 memcached 依 ...

  10. memcached学习(二)

    Slab Allocation机制:整理内存以便重复使用 最近的memcached默认情况下采用了名为Slab Allocator的机制分配.管理内存. 在该机制出现以前,内存的分配是通过对所有记录简 ...

随机推荐

  1. iOS pods编译原理

    首先看一下Podfile文件下面这行 use_frameworks! 这行的意思是Pod工程中的target是否编译成framework的形式,加上这行Pod工程中的target会编译成framewo ...

  2. php初级之数组与 类初级

    PHP 是后端脚本语言,回顾一下: 1.1 PHP 数组: <?php $user = array(); // 定义一个数组 $user[0] = 'zhangsan'; // 给数组赋值 $u ...

  3. P、NP、NPC和NP-Hard相关概念的图形和解释

    P.NP.NPC和NP-Hard相关概念的图形和解释 http://blog.csdn.net/huang1024rui/article/details/49154507 一.相关概念 P: 能在多项 ...

  4. RabbitMQ系列教程之一:我们从最简单的事情开始!Hello World(转载)

    RabbitMQ系列教程之一:我们从最简单的事情开始!Hello World 一.简介 RabbitMQ是一个消息的代理器,用于接收和发送消息,你可以这样想,他就是一个邮局,当您把需要寄送的邮件投递到 ...

  5. 【385】itertools 的 product 和 chain 和 accumulate

    参考:itertools模块 product 相当于返回两个集合中数据的所有组合可能 Examples from Eric Martin from itertools import product p ...

  6. webpack异步加载业务模块

    虽然把我们用到的JS文件全部打包一个可以节省请求数,但如果打包后的JS文件过大,那么也容易出现白屏现象,许多操作失灵.而且一些区域是点到才出现,那么相关的JS其实可以剥离出这个大JS文件外.这就涉及到 ...

  7. KVM虚拟化技术(六)磁盘管理

    KVM支持的虚拟磁盘类型 raw 这并非是一种真正的磁盘格式,而是代表虚拟机所使用的原始镜像:它并不存储元数据,因此可以作为保证虚拟机兼容性的候选方案,然而也正因为 它不存储元数据,因此不能支持某些高 ...

  8. Android 设备,如何root,执行adb shell,查看设备中的数据库信息等【转】

    原文地址: Android 设备,如何root,执行adb shell,查看设备中的数据库信息等

  9. mysql explain预估剖析

    http://www.cnblogs.com/LBSer/p/3333881.html 引子: 使用MySQL建立了一张表country,总共有才3121行记录. 但是使用explain select ...

  10. C# 根据Excel生成树

    需求: 根据Excel生成树,Excel的某些节点为属性节点, 如: 列(桩号.构件编码.测试属性1) 是列(分项工程名称) 的属性,非节点. 列(桩号.构件编码.测试属性1) 以属性的方式存在 导入 ...