欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Memcached服务端安装

程序员文章站 2022-05-12 10:39:25
...

libevent安装 cd /tmpwget http://monkey.org/~provos/libevent-1.4.14b-stable.tar.gztar -zxf libevent-1.4.14b-stable.tar.gzcd libevent-1.4.14b-stable./configure --prefix=/opt/libevent/makemake install Memcached安装 cd /tmpwget -N http://www.m

libevent安装

cd /tmp
wget http://monkey.org/~provos/libevent-1.4.14b-stable.tar.gz
tar -zxf libevent-1.4.14b-stable.tar.gz
cd libevent-1.4.14b-stable
./configure --prefix=/opt/libevent/
make
make install

Memcached安装

cd /tmp
wget -N http://www.memcached.org/files/memcached-1.4.17.tar.gz
tar -zxf memcached-1.4.17.tar.gz
cd memcached-1.4.17
./configure --prefix=/opt/memcached --enable-64bit --with-libevent=/opt/libevent
make
make install

编写Memcached启动脚本

vi /etc/init.d/memcached
#!/bin/sh
# chkconfig: - 50 50
# description: memcached
# 以下要自己配置
CMD=/opt/memcached/bin/memcached
MEMORY=128
USER=root
HOST=master
PORT=11211
CONNECTION=32
PID=/tmp/memcached.pid
start() {
    echo -n $"memcached starting... "  
    $CMD -d -m $MEMORY -u $USER -l $HOST -p $PORT -c $CONNECTION -P $PID
    echo
}
stop() {
    echo -n $"memcached shutting down... "  
    kill `cat $PID`
    echo
}
case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
        stop
        start
        ;;
    *)
    echo $"Usage: $0 {start|stop|restart}"  
    exit 1
esac
exit 0

将memcached加入系统启项

chmod +x /etc/init.d/memcached
chkconfig --add /etc/init.d/memcached
chkconfig --level 35 memcached on
chkconfig --level 35 iptables off

启动Memcached

/opt/memcached/bin/memcached -d -m 128 -u root -l master -p 11211 -c 32 -P /tmp/memcached.pid
service memcached restart

基于上面,其他一些选项的含义

-d  指定memcached进程作为一个守护进程启动
-m     指定分配给memcached使用的内存,单位是MB
-u    运行memcached的用户
-l     监听的服务器IP地址,如果有多个地址的话,使用逗号分隔,格式可以为“IP地址:端口号”,例如:-l 指定192.168.0.184:19830,192.168.0.195:13542;端口号也可以通过-p选项指定
-p     Memcached监听的端口,要保证该端口号未被占用
-c     设置最大运行的并发连接数,默认是1024
-R     为避免客户端饿死(starvation),对连续达到的客户端请求数设置一个限额,如果超过该设置,会选择另一个连接来处理请求,默认为20
-k  设置锁定所有分页的内存,对于大缓存应用场景,谨慎使用该选项
-P  保存memcached进程的pid文件
-s    指定Memcached用于监听的UNIX socket文件
-a   设置-s选项指定的UNIX socket文件的权限
-U     指定监听UDP的端口,默认11211,0表示关闭
-M  当内存使用超出配置值时,禁止自动清除缓存中的数据项,此时Memcached不可以,直到内存被释放
-r  设置产生core文件大小
-f  用于计算缓存数据项的内存块大小的乘数因子,默认是1.25
-n  为缓存数据项的key、value、flag设置最小分配字节数,默认是48
-C  禁用CAS
-h  显示Memcached版本和摘要信息
-v  输出警告和错误信息
-vv 打印信息比-v更详细:不仅输出警告和错误信息,也输出客户端请求和响应信息
-i  打印libevent和Memcached的licenses信息
-t     指定用来处理请求的线程数,默认为4
-D    用于统计报告中Key前缀和ID之间的分隔符,默认是冒号“:”
-L  尝试使用大内存分页(pages)
-B   指定使用的协议,默认行为是自动协商(autonegotiate),可能使用的选项有auto、ascii、binary。
-I    覆盖默认的STAB页大小,默认是1M
-F  禁用flush_all命令
-o     指定逗号分隔的选项,一般用于用于扩展或实验性质的选项

停止Memcached

ps -ef | grep memcached
kill -9 

Java客户端 - XMemcached客户端

spring.xml



${cache.memcacheHost}${cache.memcacheHostWeights1}${cache.memcacheConnectionPoolSize}${cache.opTimeout}