memcached for windows 修改端口和最大内存

阅读更多

要想在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 参数。
所以不管用什么命令启动服务都是没用的,见下图:
memcached for windows 修改端口和最大内存_第1张图片

于是就想到直接修改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  看看现在端口是不是改啦,^_^。

 

 

memcached.exe的-d install命令安装时其他参数貌似无法作用,-p和 -m加上后,安装完成windows服务的binpath里面只有-runservice一个参数。这个可以通过注册表改掉,但还是无法同时安装多个服 务。解决这个问题可以用sc服务命令

比如安装两个个端口11212、11213,500M内存上限的缓存服务
通过cmd命令创建以下两个缓存服务:

-----------------------------端口11212--------------------------------
sc create Memcachedserver11212 binpath= "F:\memcached\memcached.exe -d runservice -m 500 -p 11212" start= auto displayname= "Memcached server (11212)"
sc description Memcachedserver11212  "缓存服务:端口11212。"

----------------------------端口11213----------------------------------
sc create Memcachedserver11213 binpath= "F:\memcached\memcached.exe -d runservice -m 500 -p 11213" start= auto displayname= "Memcached server (11213)"
sc description Memcachedserver11213  "缓存服务:端口11213。"

 

你可能感兴趣的:(memcached,Windows,C,C++,C#)