`

Memcached

阅读更多

Memcached服务端自动启动

 
经测试,要使得Memcached能够提供session共享服务,必须启动Memcached服务端为系统服务。本人较为初级,一般都是按向导安装的。
所以,要将其设为自动启动的服务也就困难了。

上网搜索了一下,结果,得到以下一些结果,做个记录:

1、最傻的做法

通常:启动Memcache的服务器端的命令为:
# /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.200 -p 12000 -c 256 -P /tmp/memcached.pid

-d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB,
-u是运行Memcache的用户,我这里是root,
-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址192.168.0.200,
-p是设置Memcache监听的端口,我这里设置了12000,最好是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
这样,也就是属于哪个用户的服务,由哪个用户启动。

 

2、较正规的方法:

To add a service to chkconfig you will normally need a couple of special comments below the shebang of a shell script:

Shell代码 复制代码 收藏代码
  1. #!/bin/sh   
  2. # chkconfig: - 55 45  
  3. # description:  The memcached daemon is a network memory cache service.   
  4. # processname: memcached  

 

After adding the lines to /etc/init.d/memcached you can then issue

chkconfig --add memcached
There are of course additional run levels a process can start at so to check that you would issue

chkconfig --list | grep "memcached"
A common run level for memcached would be

chkconfig --level 345 memcached on

说明:chkconfig --add memcached 用来添加memcached服务
chkconfig --list | grep "memcached" 检查服务是否添加
还可以简写为这样:
chkconfig  --list | grep mem

chkconfig --level 345 memcached on 设置运行级别。
建议:最好使用chkconfig --level 235 memcached on 这样的话与apache级别相同,即只要有apache,就有memcached

3、更复杂的做法,创建完美的启动脚本

网上找到以下两个脚本:

 

Shell代码 复制代码 收藏代码
  1. #!/bin/sh   
  2. #   
  3. # memcached:    MemCached Daemon   
  4. #   
  5. # chkconfig:    - 90 25  
  6. # description:  MemCached Daemon   
  7. #   
  8. # Source function library.   
  9. . /etc/rc.d/init.d/functions   
  10. . /etc/sysconfig/network   
  11. #[ ${NETWORKING} = "no" ] && exit 0  
  12. #[ -r /etc/sysconfig/dund ] || exit 0  
  13. #. /etc/sysconfig/dund   
  14. #[ -z "$DUNDARGS" ] && exit 0  
  15. start()   
  16. {   
  17.         echo -n $"Starting memcached: "  
  18.         daemon $MEMCACHED -u daemon -d -m 1024 -l 127.0.0.1 -p 11211  
  19.         echo   
  20. }   
  21. stop()   
  22. {   
  23.         echo -n $"Shutting down memcached: "  
  24.         killproc memcached   
  25.         echo   
  26. }   
  27. MEMCACHED="/usr/local/memcached/bin/memcached"  
  28. [ -f $MEMCACHED ] || exit 1  
  29. # See how we were called.   
  30. case "$1" in   
  31.   start)   
  32.         start   
  33.         ;;   
  34.   stop)   
  35.         stop   
  36.         ;;   
  37.   restart)   
  38.         stop   
  39.         sleep 3  
  40.         start   
  41.         ;;   
  42.     *)   
  43.         echo $"Usage: $0 {start|stop|restart}"  
  44.         exit 1  
  45. esac   
  46. exit 0  

  

Shell代码 复制代码 收藏代码
  1. #!/bin/sh   
  2. #   
  3. # memcached:    MemCached Daemon   
  4. #   
  5. # chkconfig:    - 90 25    
  6. # description:  MemCached Daemon   
  7. #   
  8. # Source function library.   
  9. . /etc/rc.d/init.d/functions   
  10. . /etc/sysconfig/network   
  11.     
  12. start()    
  13. {   
  14.         echo -n $"Starting memcached: "  
  15.         daemon /usr/local/bin/memcached -u daemon -d -m 4096 -l 10.10.10.220 -p 58728  
  16.         echo   
  17. }   
  18.     
  19. stop()    
  20. {   
  21.         echo -n $"Shutting down memcached: "  
  22.         killproc memcached    
  23.         echo   
  24. }   
  25.     
  26. [ -f /usr/local/bin/memcached ] || exit 0  
  27.     
  28. # See how we were called.   
  29. case "$1" in   
  30.   start)   
  31.         start   
  32.         ;;   
  33.   stop)   
  34.         stop   
  35.         ;;   
  36.   restart|reload)   
  37.         stop   
  38.         start   
  39.         ;;   
  40.   condrestart)   
  41.         stop   
  42.         start   
  43.         ;;   
  44.   *)   
  45.         echo $"Usage: $0 {start|stop|restart|reload|condrestart}"  
  46.         exit 1  
  47. esac   
  48. 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
这一段的详细含义。需要进一步学习!

分享到:
评论

相关推荐

    memcached windows稳定版

    在终端(也即cmd命令界面)下输入 ‘c:\memcached\memcached.exe -d install’ 安装 3. 再输入: ‘c:\memcached\memcached.exe -d start’ 启动。NOTE: 以后memcached将作为windows的一个服务每次开机时自动启动...

    memcached-win-32/64-1.4.4-14

    memcached的基本设置: -p 监听的端口 -l 连接的IP地址, 默认是本机 -d start 启动memcached服务 -d restart 重起memcached服务 -d stop|shutdown 关闭正在运行的memcached服务 -d install 安装memcached服务 -d ...

    memcached 64位 window

    memcached 64位 window memcached 64位 window memcached 64位 window

    memcached-2.4.2.jar memcached-2.4.2.jar

    使用memcached 方法 package com.war.common.util; import com.danga.MemCached.*; import java.util.Date; public class MemCached { protected static MemCachedClient mcc; protected static Logger log; ...

    Memcached v1.5.7 For Windows (附带Memcached和libevent源码两个版本)

    Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的...

    memcached for win32

    MemCached For Win32 服务器 -p 监听的端口 -l 连接的IP地址, 默认是本机 -d start 启动memcached服务 -d restart 重起memcached服务 -d stop|shutdown 关闭正在运行的memcached服务 -d install 安装memcached服务 -...

    Memcached v1.5.3 For Windows (附带Memcached和libevent源码)

    Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的...

    memcached安装软件 libevent magent memcached

    memcached安装软件 libevent-2.0.21-stable.tar.gz magent.tar.gz memcached-1.4.15.tar.gz

    C#使用memCached实现缓存

    C#使用memCached实现缓存 Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度。...

    Memcached 1.4.13(Windows 32/64)最新稳定版

    memcached是一套分布式的快取系统,是一套开放源代码软件,以BSD license授权释出。是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。 以下是 memcached 在 Windows 系统下的 x86/x64 版本...

    MSM--memcached session manager(memcached+tomcat7共享session所需jar包)

    MSM--memcached session manager是一个高可用的Tomcat session共享解决方案,除了可以从本机内存快速读取Session信息(仅针对黏性Session)外,同时可使用memcached存取Session,以实现高可用。对于非黏性Session,...

    MemCached 缓存系统配置说明

    这里需要解释说明一下,很多开发者觉得Memcached是一种分布式缓存系统,但是其实Memcached服务端本身是单实例的,只是在客户端实现过程中可以根据存储的主键做分区存储,而这个区就是Memcached服务端的一个或者多个...

    memcached可视化工具

    memcached可视化工具memadmin,memcached可视化工具memadmin

    Memcached v1.5.4 For Windows (附带Memcached和libevent源码两个版本)

    Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的...

    memcached安装包以及MemCachedClient

    memcached, libevent, MemCachedClient

    Memcached安装包,windows版本,32位和64位

    Memcached的windows版本安装包,压缩包中有32位和64位两个版本,根据需要下载使用。 Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取...

    Memcached1.4.13 For Windows 32/64

    这是 memcached 在 Windows 系统下的 x86/x64 版本。 命令提示符下运行 安装: memcached -d install memcached -d start net start "Memcached Server" 卸载: memcached -d stop memcached -d remove sc delete ...

    java-memcached-2.6.6.jar

    java-memcached-2.6.6.jar

    memcached for Win32/x64服务器(袋鼠图标,版本是1.4.13)

    MemCached For Win32 服务器(高洛峰老师讲课那种) p 监听的端口 l 连接的IP地址 默认是本机 d start 启动memcached服务 d restart 重起memcached服务 d stop|shutdown 关闭正在运行的memcached服务 d ...

    java_memcached-release_2.5.1

    Memcached Cache现在已经被大家广泛使用,但是千万不要认为对Cache的操作是低损耗的,要知道这类集中式Cache对Socket连接数(会牵涉到linux操作系统文件句柄可用数),带宽,网络IO都是有要求的,有要求就意味着会有...

Global site tag (gtag.js) - Google Analytics