阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Memcached实战之单机部署—-单实例/多实例

171次阅读
没有评论

共计 10477 个字符,预计需要花费 27 分钟才能阅读完成。

memcached 是一个高性能的分布式内存对象缓存系统,用于动态 web 应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。memcached 基于一个存储键 / 值对的 hash map。其守护进程(daemon)是用 c 写的,但是客户端可以用任何语言来编写,并通过 memcached 协议与守护进程通信。

OK,简单介绍一下,下面开始部署!

环境

  • CentOS 6.5 x86_64 位 采用最小化安装,系统经过了基本优化
  • selinux 为关闭状态,iptables 为无限制模式
  • 主机名:linuxidc
  • 源码包存放位置:/usr/local/src
  • libevent 版本:2.0.21
  • memcached 版本:1.4.20

Memcached 安装及启动脚本 http://www.linuxidc.com/Linux/2013-07/87641.htm

PHP 中使用 Memcached 的性能问题 http://www.linuxidc.com/Linux/2013-06/85883.htm

Ubuntu 下安装 Memcached 及命令解释 http://www.linuxidc.com/Linux/2013-06/85832.htm

Memcached 的安装和应用 http://www.linuxidc.com/Linux/2013-08/89165.htm

使用 Nginx+Memcached 的小图片存储方案 http://www.linuxidc.com/Linux/2013-11/92390.htm

Memcached 使用入门 http://www.linuxidc.com/Linux/2011-12/49516p2.htm

一、基础环境准备

[root@linuxidc ~]# yum -y install gcc gcc-c++

二、服务部署

1、安装 libevent

      libevent 是个程序库,它将 linux 的 epool、BSD 类操作系统的 kqueue 等事件处理功能封装成统一的接口。即使对服务器的连接数增加,也能发挥出色的性能。

      由于 memcached 使用 libevent 这个库负责 Socket 的处理,因此我们在安装 memcached 之前还需要安装 libevent。目前,libevent 的最新版本是 libevent-2.0.21。如果之前你已经安装过 libevent,那么这里可以忽略此步骤。

[root@linuxidc ~]# cd /usr/local/src

[root@linuxidc src]# wget http://code.taobao.org/p/linuxidc/src/memcached/src/libevent-2.0.21-stable.tar.gz?orig

[root@linuxidc src]# tar zxvf libevent-2.0.21-stable.tar.gz

[root@linuxidc src]# cd libevent-2.0.21-stable

[root@linuxidc libevent-2.0.21-stable]#  ./configure –prefix=/usr

[root@linuxidc libevent-2.0.21-stable]#  make

[root@linuxidc libevent-2.0.21-stable]#  make install

[root@linuxidc libevent-2.0.21-stable]# ll /usr/lib/libevent*  # libevent 安装完后,会在 /usr/lib 目录下出现如下内容

lrwxrwxrwx 1 root root 21 Aug 11 13:49 /usr/lib/libevent-2.0.so.5 -> libevent-2.0.so.5.1.9

-rwxr-xr-x 1 root root 968690 Aug 11 13:49 /usr/lib/libevent-2.0.so.5.1.9

-rw-r–r– 1 root root 1571802 Aug 11 13:49 /usr/lib/libevent.a

lrwxrwxrwx 1 root root 26 Aug 11 13:49 /usr/lib/libevent_core-2.0.so.5 -> libevent_core-2.0.so.5.1.9

-rwxr-xr-x 1 root root 585225 Aug 11 13:49 /usr/lib/libevent_core-2.0.so.5.1.9

-rw-r–r– 1 root root 978482 Aug 11 13:49 /usr/lib/libevent_core.a

-rwxr-xr-x 1 root root 970 Aug 11 13:49 /usr/lib/libevent_core.la

lrwxrwxrwx 1 root root 26 Aug 11 13:49 /usr/lib/libevent_core.so -> libevent_core-2.0.so.5.1.9

lrwxrwxrwx 1 root root 27 Aug 11 13:49 /usr/lib/libevent_extra-2.0.so.5 -> libevent_extra-2.0.so.5.1.9

-rwxr-xr-x 1 root root 404852 Aug 11 13:49 /usr/lib/libevent_extra-2.0.so.5.1.9

-rw-r–r– 1 root root 593392 Aug 11 13:49 /usr/lib/libevent_extra.a

-rwxr-xr-x 1 root root 977 Aug 11 13:49 /usr/lib/libevent_extra.la

lrwxrwxrwx 1 root root 27 Aug 11 13:49 /usr/lib/libevent_extra.so -> libevent_extra-2.0.so.5.1.9

-rwxr-xr-x 1 root root 935 Aug 11 13:49 /usr/lib/libevent.la

lrwxrwxrwx 1 root root 30 Aug 11 13:49 /usr/lib/libevent_pthreads-2.0.so.5 -> libevent_pthreads-2.0.so.5.1.9

-rwxr-xr-x 1 root root 18430 Aug 11 13:49 /usr/lib/libevent_pthreads-2.0.so.5.1.9

-rw-r–r– 1 root root 18670 Aug 11 13:49 /usr/lib/libevent_pthreads.a

-rwxr-xr-x 1 root root 998 Aug 11 13:49 /usr/lib/libevent_pthreads.la

lrwxrwxrwx 1 root root 30 Aug 11 13:49 /usr/lib/libevent_pthreads.so -> libevent_pthreads-2.0.so.5.1.9

lrwxrwxrwx 1 root root 21 Aug 11 13:49 /usr/lib/libevent.so -> libevent-2.0.so.5.1.9

[root@linuxidc libevent-2.0.21-stable]# cd ..

2、安装 memcached

[root@linuxidc memcached-1.4.20]# wget http://code.taobao.org/p/linuxidc/src/memcached/src/memcached-1.4.20.tar.gz?orig

[root@linuxidc src]# tar zxvf memcached-1.4.20.tar.gz

[root@linuxidc src]# cd memcached-1.4.20

[root@linuxidc memcached-1.4.20]# ./configure –with-libevent=/usr

[root@linuxidc memcached-1.4.20]# make

[root@linuxidc memcached-1.4.20]# make install

[root@linuxidc memcached-1.4.20]# cd

[root@linuxidc ~]# ll /usr/local/bin/memcached    # 安装完成后会把 memcached 放到 /usr/local/bin/memcached

-rwxr-xr-x 1 root root 341907 Aug 11 13:52 /usr/local/bin/memcached

注意:

如果中间出现报错,请仔细检查错误信息,按照错误信息来配置或者增加相应的库或者路径

三、启动配置

1、启动 Memcached 服务

[root@linuxidc ~]# /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.121 -p 11211 -c 256 -P /tmp/memcached.pid

[root@linuxidc ~]# lsof -i tcp:11211

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME

memcached 11470 root 26u IPv4 19581 0t0 TCP 192.168.0.121:memcache (LISTEN)

补充:关于 memcached 启动命令的介绍

-d  启动一个守护(daemon)进程

-m  分配给 memcache 使用的内存数量,单位是 MB

-u  运行 memcache 的用户

-l  监听的服务器 IP 地址

-p  设置 memcache 监听的端口,端口最好大于 1024

-c  设置 memcache 最大运行的并发连接数,默认是 1024

-P  设置保存 memcache 的 pid 文件地址

    设置 pid 文件的好处在于方便结束 memcache 进程

    如果存在 pid 文件,那么我们就可以通过如下命令快速结束 memcached 进程

[root@linuxidc ~]# kill `cat /tmp/memcached.pid`

2、配置 memcached 开机自启

[root@linuxidc ~]# echo “# memcached service daemon by sun 201408022” >>/etc/rc.local

[root@linuxidc ~]# echo “/usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.121 -p 11211 -c 256 -P /tmp/memcached.pid” >> /etc/rc.local

[root@linuxidc ~]# tail -2 /etc/rc.local

# memcached service daemon by sun 201408022

/usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.121 -p 11211 -c 256 -P /tmp/memcached.pid

更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2014-08/106020p2.htm

四、服务测试

1、连接测试

[root@linuxidc src]# telnet 192.168.0.121 11211

Trying 192.168.0.121…

Connected to 192.168.0.121.

Escape character is ‘^]’. # 出现该提示就表示连接成功

quit # 输入 quit 退出当前连接

Connection closed by foreign host.

2、插入键值测试

[root@linuxidc ~]# telnet 192.168.0.121 11211

Trying 192.168.0.121…

Connected to 192.168.0.121.

Escape character is ‘^]’.

set key1 0 0 7

linuxidc

STORED

set key2 0 0 6

sunsky

STORED

quit

Connection closed by foreign host.

[root@linuxidc ~]# telnet 192.168.0.121 11211

Trying 192.168.0.121…

Connected to 192.168.0.121.

Escape character is ‘^]’.

get key1

VALUE key1 0 7

linuxidc

END

get key2

VALUE key2 0 6

sunsky

END

quit

Connection closed by foreign host.

OK!我们的 memcached 已经安装成功了!

重点:memcached 单实例 / 多实例

关于 memcached 的单实例和多实例,我们不需要像 MySQL 一样配置那么麻烦,我们只需要再执行 memcached 的启动命令启动就可以再打开多个 memcahed 实例了。不过需要注意的是,一定不能让它们的端口相同!切记!

下面是 memcached 单机多实例的启动实例:

[root@linuxidc ~]# /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.121 -p 11211 -c 256 -P /tmp/memcached.pid

[root@linuxidc ~]# /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.121 -p 11212 -c 256 -P /tmp/memcached.pid

[root@linuxidc ~]# ps -ef |grep memcached

root 11880 1 0 14:14 ? 00:00:00 /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.121 -p 11211 -c 256 -P /tmp/memcached.pid

root 11944 1 0 14:32 ? 00:00:00 /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.121 -p 11212 -c 256 -P /tmp/memcached.pid

root 11951 2175 0 14:32 pts/0 00:00:00 grep memcached

OK,从操作结果可以看出,memcached 的单机多实例已经 OK!

本篇博文就到这里,关于 memcached 命令行的操作,我将放到下一篇博文进行分享。见 http://www.linuxidc.com/Linux/2014-08/106021.htm

希望能对大家有所帮助!

memcached 是一个高性能的分布式内存对象缓存系统,用于动态 web 应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。memcached 基于一个存储键 / 值对的 hash map。其守护进程(daemon)是用 c 写的,但是客户端可以用任何语言来编写,并通过 memcached 协议与守护进程通信。

OK,简单介绍一下,下面开始部署!

环境

  • CentOS 6.5 x86_64 位 采用最小化安装,系统经过了基本优化
  • selinux 为关闭状态,iptables 为无限制模式
  • 主机名:linuxidc
  • 源码包存放位置:/usr/local/src
  • libevent 版本:2.0.21
  • memcached 版本:1.4.20

Memcached 安装及启动脚本 http://www.linuxidc.com/Linux/2013-07/87641.htm

PHP 中使用 Memcached 的性能问题 http://www.linuxidc.com/Linux/2013-06/85883.htm

Ubuntu 下安装 Memcached 及命令解释 http://www.linuxidc.com/Linux/2013-06/85832.htm

Memcached 的安装和应用 http://www.linuxidc.com/Linux/2013-08/89165.htm

使用 Nginx+Memcached 的小图片存储方案 http://www.linuxidc.com/Linux/2013-11/92390.htm

Memcached 使用入门 http://www.linuxidc.com/Linux/2011-12/49516p2.htm

一、基础环境准备

[root@linuxidc ~]# yum -y install gcc gcc-c++

二、服务部署

1、安装 libevent

      libevent 是个程序库,它将 linux 的 epool、BSD 类操作系统的 kqueue 等事件处理功能封装成统一的接口。即使对服务器的连接数增加,也能发挥出色的性能。

      由于 memcached 使用 libevent 这个库负责 Socket 的处理,因此我们在安装 memcached 之前还需要安装 libevent。目前,libevent 的最新版本是 libevent-2.0.21。如果之前你已经安装过 libevent,那么这里可以忽略此步骤。

[root@linuxidc ~]# cd /usr/local/src

[root@linuxidc src]# wget http://code.taobao.org/p/linuxidc/src/memcached/src/libevent-2.0.21-stable.tar.gz?orig

[root@linuxidc src]# tar zxvf libevent-2.0.21-stable.tar.gz

[root@linuxidc src]# cd libevent-2.0.21-stable

[root@linuxidc libevent-2.0.21-stable]#  ./configure –prefix=/usr

[root@linuxidc libevent-2.0.21-stable]#  make

[root@linuxidc libevent-2.0.21-stable]#  make install

[root@linuxidc libevent-2.0.21-stable]# ll /usr/lib/libevent*  # libevent 安装完后,会在 /usr/lib 目录下出现如下内容

lrwxrwxrwx 1 root root 21 Aug 11 13:49 /usr/lib/libevent-2.0.so.5 -> libevent-2.0.so.5.1.9

-rwxr-xr-x 1 root root 968690 Aug 11 13:49 /usr/lib/libevent-2.0.so.5.1.9

-rw-r–r– 1 root root 1571802 Aug 11 13:49 /usr/lib/libevent.a

lrwxrwxrwx 1 root root 26 Aug 11 13:49 /usr/lib/libevent_core-2.0.so.5 -> libevent_core-2.0.so.5.1.9

-rwxr-xr-x 1 root root 585225 Aug 11 13:49 /usr/lib/libevent_core-2.0.so.5.1.9

-rw-r–r– 1 root root 978482 Aug 11 13:49 /usr/lib/libevent_core.a

-rwxr-xr-x 1 root root 970 Aug 11 13:49 /usr/lib/libevent_core.la

lrwxrwxrwx 1 root root 26 Aug 11 13:49 /usr/lib/libevent_core.so -> libevent_core-2.0.so.5.1.9

lrwxrwxrwx 1 root root 27 Aug 11 13:49 /usr/lib/libevent_extra-2.0.so.5 -> libevent_extra-2.0.so.5.1.9

-rwxr-xr-x 1 root root 404852 Aug 11 13:49 /usr/lib/libevent_extra-2.0.so.5.1.9

-rw-r–r– 1 root root 593392 Aug 11 13:49 /usr/lib/libevent_extra.a

-rwxr-xr-x 1 root root 977 Aug 11 13:49 /usr/lib/libevent_extra.la

lrwxrwxrwx 1 root root 27 Aug 11 13:49 /usr/lib/libevent_extra.so -> libevent_extra-2.0.so.5.1.9

-rwxr-xr-x 1 root root 935 Aug 11 13:49 /usr/lib/libevent.la

lrwxrwxrwx 1 root root 30 Aug 11 13:49 /usr/lib/libevent_pthreads-2.0.so.5 -> libevent_pthreads-2.0.so.5.1.9

-rwxr-xr-x 1 root root 18430 Aug 11 13:49 /usr/lib/libevent_pthreads-2.0.so.5.1.9

-rw-r–r– 1 root root 18670 Aug 11 13:49 /usr/lib/libevent_pthreads.a

-rwxr-xr-x 1 root root 998 Aug 11 13:49 /usr/lib/libevent_pthreads.la

lrwxrwxrwx 1 root root 30 Aug 11 13:49 /usr/lib/libevent_pthreads.so -> libevent_pthreads-2.0.so.5.1.9

lrwxrwxrwx 1 root root 21 Aug 11 13:49 /usr/lib/libevent.so -> libevent-2.0.so.5.1.9

[root@linuxidc libevent-2.0.21-stable]# cd ..

2、安装 memcached

[root@linuxidc memcached-1.4.20]# wget http://code.taobao.org/p/linuxidc/src/memcached/src/memcached-1.4.20.tar.gz?orig

[root@linuxidc src]# tar zxvf memcached-1.4.20.tar.gz

[root@linuxidc src]# cd memcached-1.4.20

[root@linuxidc memcached-1.4.20]# ./configure –with-libevent=/usr

[root@linuxidc memcached-1.4.20]# make

[root@linuxidc memcached-1.4.20]# make install

[root@linuxidc memcached-1.4.20]# cd

[root@linuxidc ~]# ll /usr/local/bin/memcached    # 安装完成后会把 memcached 放到 /usr/local/bin/memcached

-rwxr-xr-x 1 root root 341907 Aug 11 13:52 /usr/local/bin/memcached

注意:

如果中间出现报错,请仔细检查错误信息,按照错误信息来配置或者增加相应的库或者路径

三、启动配置

1、启动 Memcached 服务

[root@linuxidc ~]# /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.121 -p 11211 -c 256 -P /tmp/memcached.pid

[root@linuxidc ~]# lsof -i tcp:11211

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME

memcached 11470 root 26u IPv4 19581 0t0 TCP 192.168.0.121:memcache (LISTEN)

补充:关于 memcached 启动命令的介绍

-d  启动一个守护(daemon)进程

-m  分配给 memcache 使用的内存数量,单位是 MB

-u  运行 memcache 的用户

-l  监听的服务器 IP 地址

-p  设置 memcache 监听的端口,端口最好大于 1024

-c  设置 memcache 最大运行的并发连接数,默认是 1024

-P  设置保存 memcache 的 pid 文件地址

    设置 pid 文件的好处在于方便结束 memcache 进程

    如果存在 pid 文件,那么我们就可以通过如下命令快速结束 memcached 进程

[root@linuxidc ~]# kill `cat /tmp/memcached.pid`

2、配置 memcached 开机自启

[root@linuxidc ~]# echo “# memcached service daemon by sun 201408022” >>/etc/rc.local

[root@linuxidc ~]# echo “/usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.121 -p 11211 -c 256 -P /tmp/memcached.pid” >> /etc/rc.local

[root@linuxidc ~]# tail -2 /etc/rc.local

# memcached service daemon by sun 201408022

/usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.121 -p 11211 -c 256 -P /tmp/memcached.pid

更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2014-08/106020p2.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计10477字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中