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

[经验分享] 搭建高性能内存对象缓存Memcached

[复制链接]

尚未签到

发表于 2018-12-25 09:23:06 | 显示全部楼层 |阅读模式
高性能内存对象缓存Memcached

Memcached简介
  Memcached时一台开源的高性能分布式内存对象缓存系统,他将所有的数据都存储在内存中,因为在内存中会同意维护一张巨大而Hash表,所以支持任意存储类型的数据

1、学会安装Memcacahed服务
  1.1安装Libevent
  Libevent是一款跨平台的事件处理接口的封装,可以兼容多个操作系统的事件访问。Memcached的安装依赖于Libevent,因此需要先完成Libevent的安装。
  挂载源代码包

[root@localhost ~]# mount.cifs //192.168.32.1/gongxiang /abc/
Password for root@//192.168.32.1/gongxiang:  
[root@localhost ~]# cd /abc/
[root@localhost abc]# ls
all_locales-1.4.18-20090526.tar.gz   magent-0.5.tar.gz
apachenk                             memcache-2.2.7.tgz
apache.sh                            memcached-1.5.6.tar.gz
apr-1.4.6.tar.gz                     mongodb-linux-x86_64-rhel70-4.0.0.tgz
apr-1.5.0.tar.gz                     mysql
apr-util-1.4.1.tar.gz                mysql-5.5.24.tar.gz
apr-util-1.5.4.tar.gz                nginx-1.15.0.tar.gz
awstats-7.0.zip                      nginx-1.2.8.tar.gz
awstats-7.6.tar.gz                   nginx-1.6.0.tar.gz
dage.jpg                             openssl-1.0.1c.tar.gz
dage.jpg.jpg                         pcre-8.39.tar.gz
desktop.ini                          php
Discuz_X2.5_SC_UTF8.zip              php-5.4.5.tar.bz2
dnf-dnf-1.1.7-1.tar.gz               pxe.sh.txt
epel-release-latest-7.noarch.rpm     Red Hat Enterprise 6.5 x86_64.iso
game.jpg                             rhel-server-7.3-x86_64-dvd.iso
gd-2.0.35.tar.gz                     sarg-2.3.7.tar.gz
hping-2.0.0-1.rc3.2.el6.rf.i686.rpm  shell.sh.txt
httpd-2.4.2.tar.gz                   snmpd.conf.txt
httpd-2.4.33.tar.gz                  squid-4.1.tar.gz
inotify-tools-3.14.tar.gz            squirrelmail-webmail-1.4.22.tar.gz
john-1.8.0.tar.gz                    xy.jpg
john,mimapojie                       ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz
libevent-2.1.8-stable.tar.gz         ZendOptimizer-3.3.0a-linux-glibc21-i386.tar.gz
LNMP

[root@localhost ~] tar xf libevent-2.1.8-stable.tar.gz -C /opt/
[root@localhost libevent-2.1.8-stable] ./configure -prefix/-s/loca//ibeve
[root@localhost libevent-2.1.8-stable] make && make install

  1.2安装Memccached
采用源代码的方式进行Memcached的编译安装,安装时指定Libevent的安装路径

[root@localhost ~] tar xf memcached-1.5.6.tar.gz -C /opt/
[root@localhost libevent-2.1.8-stable]# cd /opt/memcached-1.5.6/
[root@localhost memcached-1.5.6]# ./configure \
> --prefix=/usr/local/memcached \
> --with-libevent=/usr/local/libevent/
[root@localhost ~] make && make install
#将Memcached自带的命令建立一个软连接让系统能够识别
[root@localhost memcached-1.5.6] ln -s /usr/local/memcached/bin/* /usr/local/bin/
#其中启动Memcached时,-d选项的作用是以守护进程的方式运行Memcached服务;-m是为Memcached分配为32MB的内存,应根据企业需要进行调整: -u 指定运行的用户账号
[root@localhost memcached-1.5.6] memcached -d -m 32m -p 11211 -u root
  查看端口进程有没有开启

[root@localhost memcached-1.5.6] netstat -ntap | grep memc
tcp        0      0 0.0.0.0:11211           0.0.0.0:*               LISTEN      21394/memcached     
tcp6       0      0 :::11211                :::*                    LISTEN      21394/memcached  
#关闭防火墙
[root@localhost ~] systemctl stop firewalld.service
[root@localhost ~] setenforce 0
  2.1 Memcached API客户端
  为了使得程序可以直接调用Memcached库和接口,
可以使用Memcached扩展组
件将Memcached添加为PHP的一个模块。此扩展使用了Libmemcached库提供的API与Memcached服务端进行交互
  安装autoconf

[root@localhost ~]# yum install autoconf -y

  解压Memcache安装包

[root@localhost ~]# tar zxvf /abc/memcache-2.2.7.tgz -C /opt/
package.xml
memcache-2.2.7/config.m4
memcache-2.2.7/config9.m4
memcache-2.2.7/config.w32
memcache-2.2.7/CREDITS
memcache-2.2.7/example.php
memcache-2.2.7/memcache.c
memcache-2.2.7/memcache_queue.c
memcache-2.2.7/memcache_session.c
memcache-2.2.7/memcache_standard_hash.c
memcache-2.2.7/memcache_consistent_hash.c
memcache-2.2.7/memcache.dsp
memcache-2.2.7/php_memcache.h
memcache-2.2.7/memcache_queue.h
memcache-2.2.7/README
memcache-2.2.7/memcache.php
#进入Memcache文件
[root@localhost ~] cd /opt/memcache-2.2.7/
#我们想编译安装的话要用到configure但是Memcache客户端文件里面没有configure配置文件所以就要用到php里面的configure配置模块
[root@localhost memcache-2.2.7] ls
acinclude.m4    config.h.in   CREDITS          memcache_consistent_hash.c  memcache_standard_hash.c
aclocal.m4      config.m4     example.php      memcache.dsp                missing
autom4te.cache  config.sub    install-sh       memcache.php                mkinstalldirs
build           configure     ltmain.sh        memcache_queue.c            php_memcache.h
config9.m4      configure.in  Makefile.global  memcache_queue.h            README
#直接运行php里面bin文件里面phpize配置
[root@localhost memcache-2.2.7]# /usr/local/php/bin/phpize
Configuring for:
PHP Api Version:         20121113
Zend Module Api No:      20121212
Zend Extension Api No:   220121212
[root@localhost memcache-2.2.7]# ls
acinclude.m4    config.h.in   CREDITS          memcache_consistent_hash.c  memcache_standard_hash.c
aclocal.m4      config.m4     example.php      memcache.dsp                missing
autom4te.cache  config.sub    install-sh       memcache.php                mkinstalldirs
build           configure     ltmain.sh        memcache_queue.c            php_memcache.h
config9.m4      configure.in  Makefile.global  memcache_queue.h            README
config.guess    config.w32    memcache.c       memcache_session.c          run-tests.php
#再编译运行configure
[root@localhost memcache-2.2.7]# ./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config
[root@localhost memcache-2.2.7]# make && make install
Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/
#make install运行后会有一段路径显示出来如上记住如上的路径
  进入php底下php.ini配置文件,搜索并修改下面一行,再新增一行(如果没有就在解压包下执行cp php.ini-development /usr/local/php5/php.ini
  ln -s /usr/local/php5/bin/* /usr/local/bin/
  ln -s /usr/local/php5/sbin/* /usr/local/sbin/)
  图
  用客户端连接测试

vi /usr/local/httpd/htdocs/index.php //编写测试页面,测试memcached工作是否正常

  http://192.168.32.152/index.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-655533-1-1.html 上篇帖子: 分布式缓存memcached 下篇帖子: memcached安装笔记
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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