如何在不同的端口上使用memcached [英] How to Use memcached on different port
问题描述
i have excuted c:\memcached>memcached -l 0.0.0.0:11211,0.0.0.0:11212
getaddrinfo(): No such host is known.
failed to listen on TCP port 11211: No error.
and that was the response i got
if i will execute c:\memcached>memcached -p 11211 -d
memcached: option requires an argument -- d
Illegal argument "?" this was the response i got. so i tried these following commands
c:\memcached>memcached -p 11211 -d start
c:\memcached>memcached -p 11212 -d start
但是它仍然在11212.why上收听端口11211?
but still its listening to port 11211 not on 11212.why?
推荐答案
memcached for windows不会在同一个实例的多个端口上侦听,你需要多个服务实例才能让它作为不同端口上的服务运行。
memcached for windows will not listen on multiple ports with the same instance, you will need multiple instances of the service to get it to run as a service on different ports.
要实现此目的,您需要使用不同的机制来安装服务,而不是 memcached -d install
机制。
To accomplish this, you will need to use a different mechanism for installing the service, rather than the memcached -d install
mechanism.
我们可以使用 sc
来完成此任务。所有这些命令都需要从提升的命令提示符运行。
We can use sc
to accomplish this. All these commands will need to be run from an elevated command prompt.
sc create "Memcached11211" binPath= "C:\memcached\memcached.exe -d runservice -p 11211" DisplayName= "Memcached11211" start= auto
sc create "Memcached11212" binPath= "C:\memcached\memcached.exe -d runservice -p 11212" DisplayName= "Memcached11212" start= auto
然后我们启动它们:
C:\memcached>sc start Memcached11211
SERVICE_NAME: Memcached11211
TYPE : 10 WIN32_OWN_PROCESS
STATE : 4 RUNNING
(STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
PID : 5412
FLAGS :
C:\memcached>sc start Memcached11212
SERVICE_NAME: Memcached11212
TYPE : 10 WIN32_OWN_PROCESS
STATE : 4 RUNNING
(STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
PID : 7976
FLAGS :
C:\memcached>netstat -an | grep 112
File STDIN:
TCP 0.0.0.0:11211 0.0.0.0:0 LISTENING
TCP 0.0.0.0:11212 0.0.0.0:0 LISTENING
TCP [::]:11211 [::]:0 LISTENING
TCP [::]:11212 [::]:0 LISTENING
UDP 0.0.0.0:11211 *:*
UDP 0.0.0.0:11211 *:*
UDP [::]:11211 *:*
UDP [::]:11211 *:*�
请注意,根据配置,udp端口仍为11211,因此需要更改以确保udp也可用于两种服务。
Note however that as configured, the udp port is still 11211, so it would need to be changed to ensure that udp can be used as well for both services.
您可以在sc配置中添加 -u 11211
和 -u 11212
行。
You would add a -u 11211
and -u 11212
to the sc configuration lines.
要停止并使用个人memcached服务:
To stop and individual memcached service you would use:
sc stop memcached11211
sc stop memcached11212
删除服务:
sc delete memcached11211
sc delete memcached11212
但是,如果您只是在不同的端口上尝试它,那么只需使用多个 cmd
窗口并以此方式运行。
If however you're just trying it out on different ports then just use multiple cmd
windows and run it that way.
这篇关于如何在不同的端口上使用memcached的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!