Memcached安装(Centos7)

一、安装前准备

memcached是基于libevent的事件处理,所以在安装memcached之前要安装libevent和libevent-devel。

yum -y install libevent libevent-devel

二、服务端安装

2.1 安装

可以用编译安装memcached服务端的方式,也可以用yum方式,此处选用依赖管理工具 yum 来实现 memcached 的服务端安装。

yum install -y memcached

查看安装位置:which memcached

[root@localhost ~]# which memcached
/usr/bin/memcached
[root@localhost ~]# 

2.2 启停

2.2.1 指定参数启停
启动:memcached -d -m 64 -u root -l 192.168.0.150 -p 11211 -c 1024
  • -d:选项是启动一个守护进程, 
  • -m:是分配给Memcached使用的内存数量,单位是MB, 
  • -u:是运行Memcache的用户,我这里是root, 
  • -l:是监听的服务器IP地址, 
  • -p:是设置Memcache监听的端口,最好是1024以上的端口, 
  • -c:选项是最大运行的并发连接数,默认是1024,按照你服务器的负载量来设定, 
  • -P:是设置保存Memcache的pid文件 
[root@localhost ~]# memcached -h
memcached 1.4.15
-p <num>      TCP port number to listen on (default: 11211)
-U <num>      UDP port number to listen on (default: 11211, 0 is off)
-s <file>     UNIX socket path to listen on (disables network support)
-a <mask>     access mask for UNIX socket, in octal (default: 0700)
-l <addr>     interface to listen on (default: INADDR_ANY, all addresses)
              <addr> may be specified as host:port. If you don't specify
              a port number, the value you specified with -p or -U is
              used. You may specify multiple addresses separated by comma
              or by using -l multiple times
-d            run as a daemon
-r            maximize core file limit
-u <username> assume identity of <username> (only when run as root)
-m <num>      max memory to use for items in megabytes (default: 64 MB)
-M            return error on memory exhausted (rather than removing items)
-c <num>      max simultaneous connections (default: 1024)
-k            lock down all paged memory.  Note that there is a
              limit on how much memory you may lock.  Trying to
              allocate more than that would fail, so be sure you
              set the limit correctly for the user you started
              the daemon with (not for -u <username> user;
              under sh this is done with 'ulimit -S -l NUM_KB').
-v            verbose (print errors/warnings while in event loop)
-vv           very verbose (also print client commands/reponses)
-vvv          extremely verbose (also print internal state transitions)
-h            print this help and exit
-i            print memcached and libevent license
-P <file>     save PID in <file>, only used with -d option
-f <factor>   chunk size growth factor (default: 1.25)
-n <bytes>    minimum space allocated for key+value+flags (default: 48)
-L            Try to use large memory pages (if available). Increasing
              the memory page size could reduce the number of TLB misses
              and improve the performance. In order to get large pages
              from the OS, memcached will allocate the total item-cache
              in one large chunk.
-D <char>     Use <char> as the delimiter between key prefixes and IDs.
              This is used for per-prefix stats reporting. The default is
              ":" (colon). If this option is specified, stats collection
              is turned on automatically; if not, then it may be turned on
              by sending the "stats detail on" command to the server.
-t <num>      number of threads to use (default: 4)
-R            Maximum number of requests per event, limits the number of
              requests process for a given connection to prevent 
              starvation (default: 20)
-C            Disable use of CAS
-b <num>      Set the backlog queue limit (default: 1024)
-B            Binding protocol - one of ascii, binary, or auto (default)
-I            Override the size of each slab page. Adjusts max item size
              (default: 1mb, min: 1k, max: 128m)
-S            Turn on Sasl authentication
-o            Comma separated list of extended or experimental options
              - (EXPERIMENTAL) maxconns_fast: immediately close new
                connections if over maxconns limit
              - hashpower: An integer multiplier for how large the hash
                table should be. Can be grown at runtime if not big enough.
                Set this based on "STAT hash_power_level" before a 
                restart.

查看进程号:ps aux | grep memcached

[root@localhost ~]# ps aux | grep memcached
root       1963  0.0  0.0 344080  1064 ?        Ssl  21:16   0:00 memcached -d -m 64 -u root -l 192.168.0.150 -p 11211 -c 1024
root       1972  0.0  0.0 112708   976 pts/0    S+   21:16   0:00 grep --color=auto memcached

杀死进程:kill -9 进程号

[root@localhost ~]# kill -9 1963
[root@localhost ~]# ps aux | grep memcached
root       1974  0.0  0.0 112708   976 pts/0    S+   21:17   0:00 grep --color=auto memcached
2.2.2 默认参数启停
状态:systemctl status memcached
启动:systemctl start memcached
停止:systemctl stop memcached

默认配置:/etc/sysconfig/memcached

[root@localhost modules]# cat /etc/sysconfig/memcached 
PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS=""
[root@localhost ~]# systemctl status memcached
● memcached.service - Memcached
   Loaded: loaded (/usr/lib/systemd/system/memcached.service; disabled; vendor preset: disabled)
   Active: inactive (dead)
[root@localhost ~]# systemctl start memcached
[root@localhost ~]# systemctl status memcached
● memcached.service - Memcached
   Loaded: loaded (/usr/lib/systemd/system/memcached.service; disabled; vendor preset: disabled)
   Active: active (running) since Wed 2020-08-19 21:07:43 EDT; 5s ago
 Main PID: 1905 (memcached)
   CGroup: /system.slice/memcached.service
           └─1905 /usr/bin/memcached -u memcached -p 11211 -m 64 -c 1024

Aug 19 21:07:43 localhost.localdomain systemd[1]: Started Memcached.
Aug 19 21:07:43 localhost.localdomain systemd[1]: Starting Memcached...
[root@localhost ~]# systemctl stop memcached
[root@localhost ~]# systemctl status memchhed
Unit memchhed.service could not be found.
[root@localhost ~]# systemctl status memcached
● memcached.service - Memcached
   Loaded: loaded (/usr/lib/systemd/system/memcached.service; disabled; vendor preset: disabled)
   Active: inactive (dead)

Aug 19 21:07:43 localhost.localdomain systemd[1]: Started Memcached.
Aug 19 21:07:43 localhost.localdomain systemd[1]: Starting Memcached...
Aug 19 21:09:26 localhost.localdomain systemd[1]: Stopping Memcached...
Aug 19 21:09:26 localhost.localdomain systemd[1]: Stopped Memcached.

发表回复