一、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. Java多线程基础知识篇

    这篇是Java多线程基本用法的一个总结. 本篇文章会从一下几个方面来说明Java多线程的基本用法: 如何使用多线程 如何得到多线程的一些信息 如何停止线程 如何暂停线程 线程的一些其他用法 所有的代码 ...

  2. Linux命令:ps,netstat,top

    ps ps用于查看当前运行的进程.如果想查看动态的进程信息,可以使用top命令.查看详细命令帮助使用man ps. ps最常用的选项组合就是ps aux: # ps aux USER PID %CPU ...

  3. springmvc 配置01

    springmvc请求流程与struts比较   1.添加包 com.springsource.org.aopalliance-1.0.0.jarcom.springsource.org.apache ...

  4. 编程之美—烙饼排序问题(JAVA)

    一.问题描述 星期五的晚上,一帮同事在希格玛大厦附近的"硬盘酒吧"多喝了几杯.程序员多喝了几杯之后谈什么呢?自然是算法问题.有个同事说:"我以前在餐      馆打工,顾 ...

  5. SQLServer:什么是主键(PK)和外键(FK)?

    一.主键与外键 1.主键是用来唯一地标识一行数据.主键列必须包含唯一的值,且不能包含空值(null). 2.主键可以建立在每张二维表中单列或者多列上. 3.一张二维表上的外键可以引用另一张二维表上对应 ...

  6. php json_encode数据格式化

    在用ajax与后台交互数据的时候,后台传回来的数据格式不正确,后参考@傲雪星枫的博客在PHP文件添加了一段代码 :echo json_encode($arr); 成功解决.

  7. 嵌入式开发中常见3个的C语言技巧

    Hey,大家好!我是CrazyCatJack.今天我来说几个在嵌入式开发中常用的C语言技巧吧.也许你曾经用过,也许你只是见到过但是没有深入理解.那么今天好好补充下吧^_^ 1.指向函数的指针 指针不光 ...

  8. 小萝贝控机大师工具推荐(一款在PC就能控制手机界面的工具)

    在一次写博客的过程中,要截取手机app上的几张图片,然后粘贴到博客里面去,不了解这个工具的时候,我就从手机上截图(使用其他的截图app或者使用手机自己的截图功能),然后再传送到电脑上,然后再放到博文中 ...

  9. 仓位管理 – 1.理论篇

    看到文章标题中的"仓位管理",读者可能会认为它只适用于股市投资.其实不然.只要是投资都涉及到风险.回报率.投资额度,都会涉及到仓位管理.再者,人生本身就带着无数的抉择.风险和回报, ...

  10. LeetCode Online Judge 1. Two Sum

    刷个题,击败0.17%... Given an array of integers, return indices of the two numbers such that they add up t ...