我刚刚在 ubuntu 11.04(我的开发服务器)上安装了 memcached。在安装过程中,脚本安排 memcached 在启动时自动启动。太好了,正是我需要的。
除此之外,我需要 2 个(或可能是 3 个)不同的 memcached bin(换句话说,一个在端口 11211 上,一个在 11212 上),但我找不到在哪里配置 ubuntu 以在启动时启动两个 memcached 实例......
我目前正在使用 memcached 1.4.5
根据要求,我的 /etc/init.d/memcached 文件如下所示:
#! /bin/sh
### BEGIN INIT INFO
# Provides: memcached
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Should-Start: $local_fs
# Should-Stop: $local_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start memcached daemon
# Description: Start up memcached, a high-performance memory caching daemon
### END INIT INFO
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/bin/memcached
DAEMONBOOTSTRAP=/usr/share/memcached/scripts/start-memcached
NAME=memcached
DESC=memcached
PIDFILE=/var/run/$NAME.pid
test -x $DAEMON || exit 0
test -x $DAEMONBOOTSTRAP || exit 0
set -e
. /lib/lsb/init-functions
# Edit /etc/default/memcached to change this.
ENABLE_MEMCACHED=no
test -r /etc/default/memcached && . /etc/default/memcached
case "$1" in
start)
echo -n "Starting $DESC: "
if [ $ENABLE_MEMCACHED = yes ]; then
start-stop-daemon --start --quiet --exec $DAEMONBOOTSTRAP
echo "$NAME."
else
echo "$NAME disabled in /etc/default/memcached."
fi
;;
stop)
echo -n "Stopping $DESC: "
start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE --exec $DAEMON
echo "$NAME."
rm -f $PIDFILE
;;
restart|force-reload)
#
# If the "reload" option is implemented, move the "force-reload"
# option to the "reload" entry above. If not, "force-reload" is
# just the same as "restart".
#
echo -n "Restarting $DESC: "
start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE
rm -f $PIDFILE
sleep 1
start-stop-daemon --start --quiet --exec $DAEMONBOOTSTRAP
echo "$NAME."
;;
status)
status_of_proc $DAEMON $NAME
;;
*)
N=/etc/init.d/$NAME
echo "Usage: $N {start|stop|restart|force-reload|status}" >&2
exit 1
;;
esac
exit 0
答案1
因此,如果你读取文件 /etc/init.d/memcached,你会看到以下内容
文件=(/etc/memcached_*.conf)。
所以,我相信如果您只创建一个带有设置的 memcached_1.conf 文件,那么它将使用新端口(在您创建的文件中给出)运行一个以上的 memcached 进程。
您可以从 /etc/memcached.conf 中获取示例文件并将其复制到 /etc/memcached_1.conf。
只需将默认端口 11211 替换为您需要的端口,例如 11212。
然后重启系统。它应该会用新的端口和配置运行一个以上的 memcached 二进制文件。