设为首页 收藏本站
查看: 1293|回复: 0

[经验分享] Memcached安装配置

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2017-1-20 09:02:17 | 显示全部楼层 |阅读模式
操作系统:CentOS release 6.8 (Final)
虚拟机:VM
任务:服务与客户端在一台虚拟机主安装和配置。
Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。
Memcached服务安装
[iyunv@localhost ~]# yum install libevent libevent-devel nc –y
[iyunv@localhost ~]# rpm -qa libevent libevent-devel nc
libevent-1.4.13-4.el6.x86_64
libevent-devel-1.4.13-4.el6.x86_64
nc-1.84-24.el6.x86_64
#可以通过yum安装或编译安装,yum安装的版本比较低,可以从官网上下载安装下载最新版本编译安装http://memcached.org/downloads或者http://pecl.php.net/package/memcached
[iyunv@localhost ~]# yum install memcached –y
[iyunv@localhost ~]# which memcached
/usr/bin/memcached
[iyunv@localhost ~]# memcached -m 16m -p 11211 -d -u root -c 8192 #启动第一个实例
[iyunv@localhost ~]# lsof -i:11211  #查看启动情况
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
memcached 1857 root   26u  IPv4  14225      0t0  TCP *:memcache (LISTEN)
memcached 1857 root   27u  IPv6  14226      0t0  TCP *:memcache (LISTEN)
memcached 1857 root   28u  IPv4  14229      0t0  UDP *:memcache
memcached 1857 root   29u  IPv6  14230      0t0  UDP *:memcache
[iyunv@localhost ~]# ps -ef|grep memcached|grep -v grep  #查看进程
root      1857     1  0 19:14 ?        00:00:00 memcached -m 16m -p 11211 -d -u root -c 8192
[iyunv@localhost ~]# memcached -m 16m -p 11212 -d -u root -c 8192  #启动第二个实例
[iyunv@localhost ~]# ps -ef|grep memcached|grep -v grep  
root      1857     1  0 19:14 ?        00:00:00 memcached -m 16m -p 11211 -d -u root -c 8192
root      1868     1  0 19:15 ?        00:00:00 memcached -m 16m -p 11212 -d -u root -c 8192
[iyunv@localhost ~]# lsof -i  :11211
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
memcached 1737 root   26u  IPv4  12689      0t0  TCP *:memcache (LISTEN)
memcached 1737 root   27u  IPv6  12690      0t0  TCP *:memcache (LISTEN)
memcached 1737 root   28u  IPv4  12693      0t0  UDP *:memcache
memcached 1737 root   29u  IPv6  12694      0t0  UDP *:memcache
[iyunv@localhost ~]# lsof -i  :11212
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
memcached 1739 root   26u  IPv4  12698      0t0  TCP *:11212 (LISTEN)
memcached 1739 root   27u  IPv6  12699      0t0  TCP *:11212 (LISTEN)
memcached 1739 root   28u  IPv4  12702      0t0  UDP *:11212
memcached 1739 root   29u  IPv6  12703      0t0  UDP *:11212
[iyunv@localhost ~]# tail -2 /etc/rc.local
[iyunv@localhost ~]# vi  /etc/rc.local  #开机可以自动启动两个实例
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
memcached -m 16m -p 11211 -d -u root -c 8192
memcached -m 16m -p 11212 -d -u root -c 8192
------------------------------------------------------------------------
memcached参数说明:
-d选项是启动一个守护进程
-m是分配给Memcache使用的内存数量,单位是MB,我这里是16MB
-u是运行Memcache的用户,我这里是root
-l是监听的服务器IP地址
-p是设置Memcache监听的端口,最好是1024以上的端口
-c选项是最大运行的并发连接数,默认是1024,按照你服务器的负载量来设定
-P是设置保存Memcache的pid文件
其他参数省略说明。
[iyunv@localhost ~]# chkconfig --level 2345 memcached on  #开机启动服务
#向memcached中写入数据
[iyunv@localhost ~]# printf "set key1 0 0 6\r\n skyboy\r\n"|nc 127.0.0.1 11211
CLIENT_ERROR bad data chunk
ERROR
[iyunv@localhost ~]# printf "set key1 0 0 6\r\nskyboy\r\n"|nc 127.0.0.1 11211
STORED
[iyunv@localhost ~]# printf "set key2 0 0 5\r\nskyboy\r\n"|nc 127.0.0.1 11211
CLIENT_ERROR bad data chunk
ERROR
[iyunv@localhost ~]# printf "get key1\r\n"|nc 127.0.0.1 11211
VALUE key1 0 6
skyboy
END
[iyunv@localhost ~]# printf "delete key1\r\n"|nc 127.0.0.1 11211
DELETED
[iyunv@localhost ~]# printf "get key1\r\n"|nc 127.0.0.1 11211
END

通过telnet命令写入数据
Connection closed by foreign host.
[iyunv@localhost ~]# telnet 127.0.0.1 11211
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
set user01 0 0 7
oldgirl
STORED
get user01
VALUE user01 0 7
oldgirl
END
delete user01
DELETED
get user01
END
quit
Connection closed by foreign host.

安装Memcached客户端
http://pecl.php.net/package/memcache #下载所有版本地址
[iyunv@localhost tools]#wget http://pecl.php.net/get/memcache-2.2.4.tgz
[iyunv@localhost tools]# tar zxf memcache-2.2.4.tgz
[iyunv@localhost tools]# cd memcache-2.2.4
[iyunv@localhost memcache-2.2.4]#
#phpize是用来扩展PHP扩展模块的,通过phpize可以建立PHP的外挂模块。
[iyunv@localhost memcache-2.2.4]# /application/php/bin/phpize
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626
[iyunv@localhost memcache-2.2.4]# ./configure --enable-memcache \
--with-php-config=/application/php/bin/php-config
[iyunv@localhost memcache-2.2.4]# make
[iyunv@localhost memcache-2.2.4]# make install
Installing shared extensions:     /application/php5.3.27/lib/php/extensions/no-debug-non-zts-20090626/
[iyunv@localhost memcache-2.2.4]# ls /application/php/lib/php/extensions/no-debug-non-zts-20090626/
memcache.so   #生成了.so模块
[iyunv@localhost memcache-2.2.4]#cd /application/php/lib/
[iyunv@localhost lib]# vi php.ini  #在末尾添加以下两行
extension_dir="/application/php/lib/php/extensions/no-debug-non-zts-20090626/"
extension=memcache.so
[iyunv@localhost lib]# /application/php/sbin/php-fpm  -t  #检查语法
[19-Jan-2017 19:50:52] NOTICE: configuration file /application/php5.3.27/etc/php-fpm.conf test is successful
[iyunv@localhost lib]# /application/php/sbin/php-fpm   #启动服务
[iyunv@localhost lib]# ps -ef|grep php-fpm|grep -v grep
root      4624     1  0 19:51 ?        00:00:00 php-fpm: master process (/application/php5.3.27/etc/php-fpm.conf)
nginx     4625  4624  0 19:51 ?        00:00:00 php-fpm: pool www           
nginx     4626  4624  0 19:51 ?        00:00:00 php-fpm: pool www      
重启fpm
[iyunv@localhost ~]# pkill php-fpm
[iyunv@localhost ~]# ps -ef|grep php-fpm|grep -v grep
[iyunv@localhost ~]# /application/php/sbin/php-fpm
[iyunv@localhost ~]# ps -ef|grep php-fpm|grep -v grep
root      2186     1  0 23:39 ?        00:00:00 php-fpm: master process (/application/php5.3.27/etc/php-fpm.conf)
nginx     2187  2186  0 23:39 ?        00:00:00 php-fpm: pool www           
nginx     2188  2186  0 23:39 ?        00:00:00 php-fpm: pool www   
测试Memcached客户端安装是否成功?http://192.168.222.130/phpinfo.php
Phpinfo.php文件内容如下:
<?php
Phpinfo();
?>
QQ截图20170120090136.png
测试LNMP环境是否连接Memcached服务成功?
[iyunv@localhost www]# vi  op_mem.php
<?php
$memcache=new memcache;
$memcache->connect('192.168.222.130',11211) or die ("Could not connect Mc Server");
$memcache->set('key','学习Memcached');
$get=$memcache->get('key');
echo $get;
?>
[iyunv@localhost www]# /application/php/bin/php  op_mem.php
学习Memcached
或者浏览器访问:http://192.168.222.130/op_mem.php



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-330957-1-1.html 上篇帖子: Memcache 介绍与部署 下篇帖子: centos安装memcache
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表