memcache 開機啟動


一、

通常:啟動Memcache的服務器端的命令為:
# /usr/local/bin/memcached -d -m 10 -u root -l 127.0.0.1 -p 11211 -c 256 -P /tmp/memcached.pid

-d選項是啟動一個守護進程,
-m是分配給Memcache使用的內存數量,單位是MB,我這里是10MB,
-u是運行Memcache的用戶,我這里是root,
-l是監聽的服務器IP地址,如果有多個地址的話,我這里指定了服務器的IP地址127.0.0.1,
-p是設置Memcache監聽的端口,我這里設置了11211,最好是1024以上的端口,
-c選項是最大運行的並發連接數,默認是1024,我這里設置了256,按照你服務器的負載量來設定,
-P是設置保存Memcache的pid文件,我這里是保存在 /tmp/memcached.pid,

想開機自動啟動的話,只需在/etc/rc.d/rc.local中加入一行,上面命令
有人用以下命令:
/usr/local/memcached/bin/memcached -d -m 20 -p 11211 -u apache
上面有些東西可以參考一下:即,ip不指定時,默認是本機,用戶,最好選擇是:apache 或 deamon
這樣,也就是屬於哪個用戶的服務,由哪個用戶啟動。

 

 

二、

腳本方式

#!/bin/sh
#
# memcached:    MemCached Daemon
#
# chkconfig:    - 90 25
# description:  MemCached Daemon
#
# Source function library.
. /etc/rc.d/init.d/functions
. /etc/sysconfig/network
#[ ${NETWORKING} = "no" ] && exit 0
#[ -r /etc/sysconfig/dund ] || exit 0
#. /etc/sysconfig/dund
#[ -z "$DUNDARGS" ] && exit 0
start()
{
        echo -n $"Starting memcached: "
        daemon $MEMCACHED -u daemon -d -m 1024 -l 127.0.0.1 -p 11211
        echo
}
stop()
{
        echo -n $"Shutting down memcached: "
        killproc memcached
        echo
}
MEMCACHED="/usr/local/memcached/bin/memcached"
[ -f $MEMCACHED ] || exit 1
# See how we were called.
case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  restart)
        stop
        sleep 3
        start
        ;;
    *)
        echo $"Usage: $0 {start|stop|restart}"
        exit 1
esac
exit 0

 

 

#!/bin/sh
#
# memcached:    MemCached Daemon
#
# chkconfig:    - 90 25 
# description:  MemCached Daemon
#
# Source function library.
. /etc/rc.d/init.d/functions
. /etc/sysconfig/network
 
start() 
{
        echo -n $"Starting memcached: "
        daemon /usr/local/bin/memcached -u daemon -d -m 4096 -l 10.10.10.220 -p 58728
        echo
}
 
stop() 
{
        echo -n $"Shutting down memcached: "
        killproc memcached 
        echo
}
 
[ -f /usr/local/bin/memcached ] || exit 0
 
# See how we were called.
case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  restart|reload)
        stop
        start
        ;;
  condrestart)
        stop
        start
        ;;
  *)
        echo $"Usage: $0 {start|stop|restart|reload|condrestart}"
        exit 1
esac
exit 0

[root@crm ~]# chkconfig  --add memcached 
[root@crm ~]# chkconfig  --level 235  memcached  on
[root@crm ~]# chkconfig  --list | grep mem
memcached       0:off   1:off   2:on   3:on    4:off   5:on   6:off

接下來,可以用以下命令啟動與停止 memcached

/etc/rc.d/init.d/memcached  start  
/etc/rc.d/init.d/memcached  stop
/etc/rc.d/init.d/memcached  restart
如: 
[root@crm ~]# /etc/rc.d/init.d/memcached  restart
Shutting down memcached: [  OK  ]
Starting memcached:      [  OK  ]

同時,還可以用:
service memcached start
這樣的命令操作

然后,可以用ps命令查看進程信息。
[root@crm ~]# ps aux | grep mem
daemon   23781  0.0  0.2 13892 9860 ?  Ss 16:51:00  /.../memcached -u daemon -d -m 1024 -l 172.16.0.106 -p 11211

以上兩個腳本前一個腳本中,對網絡進行檢查。其它都是針對服務啟動與停止的命令提示設置。
有人說,復雜的腳本並不好懂,自己也不會寫,卻想要更完善的,怎么辦?
那就到網上找高手的。最好的捷徑就是到對應的RPM包中去找。(如果直接用RPM包安裝,這些事情都不用做了)
當然,memcached多數情況下都是編譯安裝,因為,很多時候都是找不到對應的版本。
腳本中 # chkconfig: - 55 45 運行級別這一列參數用的是 -,這樣,是不在腳本中寫死,可以通過 chkconfig  --level 235  memcached  on 靈活設置。
最后就是,目前仍不了解
. /etc/sysconfig/network
#[ ${NETWORKING} = "no" ] && exit 0
#[ -r /etc/sysconfig/dund ] || exit 0
#. /etc/sysconfig/dund
#[ -z "$DUNDARGS" ] && exit 0
這一段的詳細含義。需要進一步學習!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM