一、Memcached是什么

Memcached是由Danga Interactive开发的,高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。

Memcached基于一个存储键/值对的Hashmap。其守护进程(Daemon )是用C写的,但是客户端可以用任何语言来编写,并通过Memcached协议与守护进程通信。

二、Memcached在Windows上的安装

(一)下载Memercached For Windows

下载地址:http://files.cnblogs.com/tianzhiliang/memcached-win32-1.4.4-14.rar

(二)安装步骤

1、解压到指定目录,如:C:\Memcached\memcached-win32-1.4.4-14。

2、用cmd打开命令窗口,转到解压的目录,输入 “memcached.exe -d install”。

3、打开控制面板,打开服务,可以看到memcached已经在上面,如果没有启动,则手动启动一下。

4、使用telnet命令 验证缓存服务器是否可用。

开始什么都不显示,输入命令stats 回车后查看统计信息,如下图,说明服务器运作正常。

(三)参数介绍

1、以上的安装和启动都是在默认环境下进行的,在安装时可设置如下参数:

-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 显示帮助

如:“memcached -d install -l 127.0.0.1 -m 1024 -c 2048”。

2、如果在安装时没有添加参数,可通过修改注册表信息进行设置,打开注册表,找

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\memcached

在其中有一个“ImagePath”项,值为:

"C:\Memcached\memcached-win32-1.4.4-14\memcached.exe" -d runservice

在后面加上“-m 1024 -c 2048”。如下图:

3、输入stats命令后,页面出现的参数介绍。

STAT pid 4356 服务器进程ID

STAT uptime 56625 服务器运行时间,单位秒

STAT time 1225249079 服务器当前的UNIX时间

STAT version1.1.0服务器的版本号

STAT pointer_size 64

STAT rusage_user 151.845489 该进程累计的用户时间(秒:微妙)

STAT rusage_system 121.667603 该进程累计的系统时间(秒:微妙)

STAT ibuffer_size 4096

STAT curr_connections 13 连接数量

STAT total_connections 54136 服务器运行以来接受的连接总数

STAT connection_structures 318 服务器分配的连接结构的数量

STAT cmd_get 100595 取回请求总数

STAT cmd_set 6510 存储请求总数

STAT get_hits 96543 请求成功的总次数

STAT get_misses 4052 请求失败的总次数

STAT bytes_read 4427679 服务器从网络读取到的总字节数

STAT bytes_written 6585596 服务器向网络发送的总字节数

备注:

  • uptime 是memcached运行的秒数,
  • cmd_get是查询缓存的次数。 cmd_get/uptime得到平均每秒请求缓存的次数。
  • cmd_set是设置key=>value的次数。整个memcached是个大hash,用cmd_get没有找到的内容,就会调用cmd_set写进缓存里。
  • get_hits是缓存命中的次数,缓存命中率 = get_hits/cmd_get *100%。
  • get_misses加上get_hits等于cmd_get。
  • total_itemscurr_items表示现在在缓存中的键值对个数。

Memcached初探的更多相关文章

  1. Key/Value之王Memcached初探:三、Memcached解决Session的分布式存储场景的应用

    一.高可用的Session服务器场景简介 1.1 应用服务器的无状态特性 应用层服务器(这里一般指Web服务器)处理网站应用的业务逻辑,应用的一个最显著的特点是:应用的无状态性. PS:提到无状态特性 ...

  2. 【转】 Key/Value之王Memcached初探:三、Memcached解决Session的分布式存储场景的应用

    一.高可用的Session服务器场景简介 1.1 应用服务器的无状态特性 应用层服务器(这里一般指Web服务器)处理网站应用的业务逻辑,应用的一个最显著的特点是:应用的无状态性. PS:提到无状态特性 ...

  3. Key/Value之王Memcached初探:二、Memcached在.Net中的基本操作

    一.Memcached ClientLib For .Net 首先,不得不说,许多语言都实现了连接Memcached的客户端,其中以Perl.PHP为主. 仅仅memcached网站上列出的语言就有: ...

  4. Key/Value之王Memcached初探:一、掀起Memcached的盖头来

    一.Memcached是何方神圣? 在数据驱动的Web开发中,经常要重复从数据库中取出相同的数据,这种重复极大的增加了数据库负载.缓存是解决这个问题的好办法.但是ASP.NET中的HttpRuntim ...

  5. 【转】 Key/Value之王Memcached初探:二、Memcached在.Net中的基本操作

    一.Memcached ClientLib For .Net 首先,不得不说,许多语言都实现了连接Memcached的客户端,其中以Perl.PHP为主. 仅仅memcached网站上列出的语言就有: ...

  6. 【转】Key/Value之王Memcached初探:一、掀起Memcached的盖头来

    一.Memcached是何方神圣? 在数据驱动的Web开发中,经常要重复从数据库中取出相同的数据,这种重复极大的增加了数据库负载.缓存是解决这个问题的好办法.但是ASP.NET中的HttpRuntim ...

  7. Key/Value之王Memcached初探:二、Memcached在.Net中的基本操作 - Edison Chou

    一.Memcached ClientLib For .Net 首先,不得不说,许多语言都实现了连接Memcached的客户端,其中以Perl.PHP为主. 仅仅memcached网站上列出的语言就有: ...

  8. Memcached认知[分布式]

    Memcached是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载. Memcached的服务器客户端通信使用简单的基于文本行的协议. Memcached基于一个存储键/值对的 ...

  9. 比较不错的Nosql文章

    1. NoSQL简单介绍 2. NoSQL初探之人人都爱Redis:(1)Redis简介与简单安装 3. NoSQL初探之人人都爱Redis:(2)Redis API与常用数据类型简介 4. NoSQ ...

随机推荐

  1. Integer.parseInt 引发的血案

    Integer.parseInt 处理一个空字符串, 结果出错了, 程序没有注意到,搞了很久, 引发了血案啊!! 最后,终于 观察到了, 最后的部分: Caused by: java.lang.NoC ...

  2. zk 起别名时候碰到的问题

    第一次搭建时候都是用的ip,没什么问题,看到别人都是用的别名,于是也想试试把ip改成别名.然而 其中碰到的问题 ,快一周了才解决,现在记录下: 1.改主机别名 一直以为 修改 /etc/hosts 里 ...

  3. Ajax 提交KindEditor的数据

    这次我是在EasyUI中使用了KindEditor的编辑器,按照官方给的代码,总是无法获取编辑器里面的值(内容),如下:         KindEditor.ready(function (K) { ...

  4. CRL快速开发框架系列教程一(Code First数据表不需再关心)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  5. Javascript 中 with 的替代方案和String 中的正则方法

    这几天在升级自己的MVVM 框架,遇到很多小问题,就在这里统一解决了. with 语法 在代码中,要执行这么一个函数 function computeExpression(exp, scope) { ...

  6. css或者js文件后面跟着参数

    以前一直不懂,看到某某网站上面css链接 ?v=20130203类似这样的 后来发现是为了避免浏览器读取缓存而采取的强制刷新缓存的办法. “比如新浪首页在2010年4月5日改版,只是改变CSS样式表, ...

  7. iOS: 在UIViewController 中添加Static UITableView

    如果你直接在 UIViewController 中加入一个 UITableView 并将其 Content 属性设置为 Static Cells,此时 Xcode 会报错: Static table ...

  8. 高德地图API 简单使用

    主要是功能是 在地图上添加标记点.在标记点添加相应的内容.单击查看内容.双击直接进入相应的项目系统. <!DOCTYPE html> <html xmlns="http:/ ...

  9. 黑马程序员——ARC机制总结和用ARC建立模型

    ARC 全称:Automatic Reference Counting 使用ARC 只需要在建立一个新的项目的时候把 下面的√打上 Xcode5以后都会默认建议开发者使用ARC机制 新的项目中如果有部 ...

  10. enote笔记法使用范例(1)——自己总结的一些编写代码的常识 (a)

    章节. 编程习惯     why 函数(<<为了>>便于提升软件开发效率和维护效率) 开发角度: 1)隐藏实现细节,这也是API质量最重要的品质2)复用:通过使用函数来代码复用 ...