MemCached帮助文档

 

 

1、安装(for Windows

memcached 1.2.4 for win32.
下载地址:http://www.splinedancer.com/memcached-win32/

例如:
c:\memcached\memcached.exe -d install
c:\memcached\memcached.exe -d start
(
默认端口11211)

参数解释:

-d 以守护程序(daemon)方式运行 memcached
-m
设置 memcached 可以使用的内存大小,单位为 M
-l
设置监听的 IP 地址,如果是本机的话,通常可以不设置此参数;
-p
设置监听的端口,默认为 11211,所以也可以不设置此参数;
-u
指定用户,如果当前为 root 的话,需要使用此参数指定用户。
-h
帮助

2、查看使用状态

首先登录到服务器,然后在cmd命令行中键入

telnet 127.0.0.1 11211

其中127.0.0.1是服务器的地址(这里是本机) ,11211memcached绑定的端口号。

之后命令行窗口全黑只有光标提示,摸黑输入stats,即可得到描述Memcached服务器运行情况的参数。如下图:

<!--[if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"> <v:stroke joinstyle="miter" /> <v:formulas> <v:f eqn="if lineDrawn pixelLineWidth 0" /> <v:f eqn="sum @0 1 0" /> <v:f eqn="sum 0 0 @1" /> <v:f eqn="prod @2 1 2" /> <v:f eqn="prod @3 21600 pixelWidth" /> <v:f eqn="prod @3 21600 pixelHeight" /> <v:f eqn="sum @0 0 1" /> <v:f eqn="prod @6 1 2" /> <v:f eqn="prod @7 21600 pixelWidth" /> <v:f eqn="sum @8 21600 0" /> <v:f eqn="prod @7 21600 pixelHeight" /> <v:f eqn="sum @10 21600 0" /> </v:formulas> <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect" /> <o:lock v:ext="edit" aspectratio="t" /> </v:shapetype><v:shape id="图片_x0020_1" o:spid="_x0000_i1026" type="#_x0000_t75" alt="shell中查看Memcached状态" href="http://www.blogkid.cn/wp-content/uploads/2008/04/memcached_shell_2.JPG" title="&quot;shell中查看Memcached状态&quot;" style='width:218.25pt;height:335.25pt; visibility:visible;mso-wrap-style:square' o:button="t"> <v:fill o:detectmouseclick="t" /> <v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtmlclip1\01\clip_image001.jpg" o:title="shell中查看Memcached状态" /> </v:shape><![endif]--><!--[if !vml]-->MemCached帮助文档<!--[ndif]-->

 

其中,

uptime memcached运行的秒数,

cmd_get是查询缓存的次数。

这两个数据相除一下就能得到平均每秒请求缓存的次数——最近niupu的流量很低,所以平均也就一秒请求一次多,这么点大的压力,用文件系统缓存一样没问题,根本不会体现出使用memcached的优越。

下面的cmd_set 就是设置key=>value的次数。

整个memcached是个大hash,用cmd_get没有找到的内容,就会调用一下cmd_set写进缓存里。紧跟着是get_hits,就是缓存命中的次数。缓存命中率 = get_hits/cmd_get * 100%

下面的get_misses的数字加上get_hits应该等于cmd_get

get_misses+get_hits=cmd_get

total_itemscurr_items表示现在在缓存中的键值对个数,

在图上total_items == cmd_set == get_misses,不过当可用最大内存用光时,memcached就会删掉一些内容,上面的等式就不成立了。

 

4、修改参数

要想在windows中使用memcached,必须先下载memcached for win32安装。

下载地址:http://jehiah.cz/projects/memcached-win32/

解压后只要在命令窗口中输入下面命令c:\memcached\memcached.exe -d install  就可以把memcached安装为windows服务了。

启动该服务后,memcached服务默认占用的端口是11211,占用的最大内存默认是64M

在修改这2个配置选项就碰到了一些问题,网上搜索了很多资料,都说使用下面的命令启动服务就可以:

c:\memcached\memcached.exe -p 12345 -m 1024 -d start  ,  -p 表示要修改的端口, -m表示占用的最大内存(单位为M)

但是无论怎么调用这个命令,发现端口一直还是11211

打开windows服务控制面板一看,发现memcached.exe 默认安装的服务器启动参数中根本没写-p -m的参数,只有1 -d runservice参数。
所以不管用什么命令启动服务都是没用的,见下图:
<!--[if gte vml 1]><v:shape id="图片_x0020_3" o:spid="_x0000_i1025" type="#_x0000_t75" alt="http://www.blogjava.net/images/blogjava_net/bearrui/1.JPG" style='width:300pt;height:338.25pt;visibility:visible;mso-wrap-style:square'> <v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtmlclip1\01\clip_image002.jpg" o:title="1" /> </v:shape><![endif]--><!--[if !vml]-->
MemCached帮助文档<!--[endif]-->


于是就想到直接修改windows服务的启动参数,操作如下,打开注册表,找到:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\memcached Server
其中的ImagePath项的值为:"c:\memcached\memcached.exe" -d runservice
改成:"c:\memcached\memcached.exe" -p 12345 -m 128 -d runservice

保存后重新启动memcached服务,然后在命令行中输入netstat -n -a  看看现在端口是不是改啦,^_^

你可能感兴趣的:(C++,c,windows,F#,memcached)