「Memcached」- 安装 @20210419
内容简介
本文将简述如何在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」- 杂记
「Memcached」- 通过telnet(1)命令访问Memcached服务
Memcached的管理
libMemcached
「Memcached」- 快速开始与基本概念
参考文献
Memcached Homepage
Memcached Wiki
GitHub/memcached/memcached/Wiki/Install