「Memcached」- 安装

  CREATED BY JENKINSBOT

内容简介

本文将简述如何在CentOS上安装Memcached服务。

服务安装

方法一、从源中安装(推荐)

#!/bin/sh

# Debian/Ubuntu:
apt-get install memcached

# Redhat/Centos:
yum install memcached

方法二、使用源码安装

安装依赖库
可以「到官网」/「到Github仓库」下载libevent源码,然后编译安装。也可以从发行版的源中安装libevent库:

#!/bin/sh

# Debian/Ubuntu:
apt-get install libevent-dev

# Redhat/Centos:
yum install libevent-devel

安装服务
可以参考官网中的安装指示

#!/bin/sh

wget http://memcached.org/latest
tar -zxvf memcached-1.x.x.tar.gz
cd memcached-1.x.x
./configure && make && make test && sudo make install

可执行程序

memcached
该服务的程序文件。

命令行选项

-s <file>
指定要监听的UNIX socket文件 (禁用了网络支持)。

-A
支持ASCII的shutdown命令。

-a <perms>
指出由-s选项创建的Unix Socket文件的权限。八进制格式。

-l <addr>
要监听的IP地址。可以是host:port的格式。如果没有指定port则会使用-p或者-U选项指定的值。
如果要指定多个地址,可以使用逗号分割,或者多次使用-l选项。为了避免安全问题和非法访问之类的情况,强烈建议绑定地址,或者使用防火墙。

-d
以守护进程的方式运行memcached服务。

-u <username>
当以root运行memcached时,可用此选项指定运行memcached的用户。

-m <num>
memcached用于缓存Object而使用的内存的最大量。
默认64M。

-c <num>
最大的连接数。
默认1024。

-R <num>
该选项主要用于防止客户端“饿死”,通过限制从单个客户端连接中处理的顺序请求数量。
一旦连接超出了此值,在处理来自此连接的任何进一步请求之前,服务器将尝试处理其他连接上的I/O。
默认值为20

-k
锁定所有分页的内存。
在大型高速缓存中是个危险选项,参阅README和memcached主页获取配置建议。

-p <num>
监听的TCP端口号。
默认为11211。

-U <num>
要监听的UDP端口号。
如果为0,表示关闭。

-M
当内存不足时,禁用从缓存中自动移除项。除非释放充足的空间,否则不会进行添加。

-r
将核心文件大小限制提高到允许的最大值。

-f <factor>
计算item存储的内存块大小的时,使用<factor>作为乘数。根据可用内存总量和项目大小的分布,较低的值可能导致更少的浪费。
默认值为1.25。

-n <size>
为item的key分配的最小字节数。默认是48。
如果有很多小的key和value,可以设置较小的size获得显着的内存效率增益。
另一方面,如果使用高块增长因子(-f选项),则可能需要增加size以允许更大百分比的item装入最密集(最小)的块中。

-C
禁用CAS并将每个项的大小减少8个字节。

-v
在event进行循环的时候,打印错误和警告信息。

-vv
与-v相同,但是也会将client的命令和相应打印出来。

-vvv
打印更详细的信息。除了上面的内容,还会打印出内部转换信息。

-P <filename>
只有在使用了-d选项后才能使用。该选项指定pid文件的位置。

-t <threads>
用于处理请求的线程数。如果memcached编译时启用了线程,则此选项才有意义。
该值超过CPU的核心数没有什么意义。不建议设置太高数量(64个以上)的线程数。
默认值为4。

-D <char>
在key前缀和ID之间使用<char>作为分隔符。
这用于每个统计信息的报告添加前缀。默认值为“:”(冒号)。
如果指定此选项,统计信息将自动打开;如果没有,那么可以通过向服务器发送“stats detail on”命令来打开它。

-L
尝试使用大的内存页面(如果可用)。增加内存页面大小可以减少TLB未命中的数量并提高性能。
为了从操作系统获取大页面,memcached将在一个大块中分配总的item-cache。仅在操作系统支持时才可用。

-b <num>
积压队列限制为num的连接。
默认为1024。

-B <proto>
指定绑定的协议。可能的值为auto、ascii、binary。
默认情况下,会与客户端协商要使用的协议。

-I <size>
指定每个slab页的大小。
默认为1MB。最小值为1K。最大值为128M。
调整这个值会改变item的大小限制。这会增加slab的数量(使用-v查看)以及memcached使用的内存。

-S
开启SASL认证。
只有在编译时启用了SASL支持,该选项才有效。

-F
禁用”flush_all”命令。
如果禁用之后执行了flush_all命令,cmd_flush计数器会增加,但是不会触发flush而且客户端会收到错误消息。

-X
禁用”stats cachedump”和”lru_crawler metadump”

-o <options>
扩展或实验选项列表,选项之间使用逗号分割。
使用-h或者到Memcached的Wiki获取更多的信息。

-V / -h
显示版本和帮助信息。

-i
打印memcached和libevent的许可证信息。

参考文献

Memcached Homepage
Memcached Wiki
GitHub/memcached/memcached/Wiki/Install