配置php扩展memcache

配置php扩展memcache php

环境说明: html

系统版本    CentOS 6.9 x86_64         nginx

软件版本    nginx-1.12.2        php-5.5.38        yum安装memcached1.4.4 web

php扩展memcache2.2.7            MemAdmin1.0.12 数据库

MemCache是一个自由、源码开放、高性能、分布式的分布式内存对象缓存系统,用于动态Web应用以减轻数据库的负载。它经过在内存中缓存数据和对象来减小读取数据库的次数,从而提升了网站访问的速度。 MemCaChe是一个存储键值对的HashMap,在内存中对任意的数据(好比字符串、对象等)所使用的key-value存储,数据能够来自数据库调用、API调用,或者页面渲染的结果。MemCache设计理念就是小而强大,它简单的设计促进了快速部署、易于开发并解决面对大规模的数据缓存的许多难题,而所开放的API使得MemCache能用于Java、C/C++/C#、Perl、Python、PHP、Ruby等大部分流行的程序语言。 vim

一、数据库服务器配置memcached 数组

  1. [root@db01 ~]# yum install memcached -y         #安装memcached  
  2. [root@db01 ~]# cat /etc/sysconfig/memcached     #查看配置文件,默认便可,不作修改  
  3. PORT="11211"  
  4. USER="memcached"  
  5. MAXCONN="1024"  
  6. CACHESIZE="64"  
  7. OPTIONS=""  
  8. [root@db01 ~]# /etc/init.d/memcached start      #启动  
  9. Starting memcached:                                        [  OK  ]  
  10. [root@db01 ~]# netstat -lntup|grep 11211            #检查  
  11. tcp        0      0 0.0.0.0:11211               0.0.0.0:*                   LISTEN      2478/memcached        
  12. tcp        0      0 :::11211                    :::*                        LISTEN      2478/memcached        
  13. udp        0      0 0.0.0.0:11211               0.0.0.0:*                               2478/memcached        
  14. udp        0      0 :::11211                    :::*                                    2478/memcached  

二、web服务器配置memcache 浏览器

从官方网站下载源码包或本地上传http://pecl.php.net/package/memcache 缓存

其中版本号为3以上的是用于php7以上的,这里咱们下载2.2.7版本 性能优化

  1. [root@Web01 ~]# cd /service/tools/  
  2. [root@Web01 tools]# wget http://pecl.php.net/get/memcache-3.0.8.tgz     #下载源码包  
  3. [root@Web01 tools]# tar xf memcache-2.2.7.tgz       #解压  
  4. [root@Web01 tools]# cd memcache-2.2.7  
  5. [root@Web01 memcache-2.2.7]# ls  
  6. config9.m4  CREDITS      memcache_consistent_hash.c  memcache_queue.c    memcache_standard_hash.c  
  7. config.m4   example.php  memcache.dsp                memcache_queue.h    php_memcache.h  
  8. config.w32  memcache.c   memcache.php                memcache_session.c  README      
  9. [root@Web01 memcache-2.2.7]# /application/php/bin/phpize        #检查编译环境,不作检查不能执行./configure  
  10. Configuring for:  
  11. PHP Api Version:         20121113  
  12. Zend Module Api No:      20121212  
  13. Zend Extension Api No:   220121212  
  14. [root@Web01 memcache-2.2.7]# ./configure --with-php-config=/application/php/bin/php-config --enable-memcache    #编译  
  15. [root@Web01 memcache-2.2.7]# make && make install  
  16. [root@Web01 memcache-2.2.7]# ll /application/php5.5.38/lib/php/extensions/no-debug-non-zts-20121212/  
  17. #检查  
  18. memcache.so  opcache.a    opcache.so  
  19. [root@Web01 memcache-2.2.7]# find /application/php5.5.38/ -name "php.ini"  
  20. /application/php5.5.38/etc/php.ini  #找出php配置文件php.ini的路径,默认在etc下,须要拷贝至lib  
  21. [root@Web01 memcache-2.2.7]# cp /application/php5.5.38/etc/php.ini /application/php5.5.38/lib/php.ini  
  22. [root@Web01 memcache-2.2.7]# vim /application/php5.5.38/lib/php.ini     #修改配置文件  
  23. 修改718行的内容指定扩展模块的路径并添加一行指定扩展模块名称  
  24. 718 extension_dir = "/application/php5.5.38/lib/php/extensions/no-debug-non-zts-20121212/"  
  25. 719 extension = "memcache.so"  
  26. [root@Web01 tools]# pkill php-fpm  
  27. [root@Web01 tools]# /application/php/sbin/php-fpm  
  28. [root@Web01 tools]# /application/php/bin/php -m|grep memcache  
  29. memcache  

三、浏览器端检查

以discuz为例

从新访问刷新,进入管理中心——>全局———>性能优化——>内存优化,能够看到已经生效

四、配置开启服务器优化

编辑站点目录下config_global.php文件

  1. [root@Web01 discuz]# pwd  
  2. /application/nginx/html/discuz  
  3. [root@Web01 discuz]# vim config/config_global.php  
  4. $_config['memory']['memcache']['server'] = '192.168.1.51';      #指定服务器地址  

浏览器刷新再次访问,此时已经能够支持memcache

五、安装并配置memcache管理界面memadmin

MemAdmin是一款可视化的Memcached管理与监控工具,使用PHP开发,体积小,操做简单。

主要功能:

服务器参数监控:STATS、SETTINGS、ITEMS、SLABS、SIZES实时刷新

服务器性能监控:GET、DELETE、INCR、DECR、CAS等经常使用操做命中率实时监控

支持数据遍历,方便对存储内容进行监视

支持条件查询,筛选出知足条件的KEY或VALUE

数组、JSON等序列化字符反序列显示

兼容memcache协议的其余服务,如Tokyo Tyrant (遍历功能除外)

支持服务器链接池,多服务器管理切换方便简洁

5.一、下载安装包并解压到站点目录

官方网站下载:http://www.junopen.com/memadmin/

[root@Web01 memadmin]# tar xf memadmin-1.0.12.tar.gz

5.二、修改nginx配置文件指定站点目录及域名并平滑重启

  1. [root@Web01 memadmin]# nginx -t   
  2. nginx: the configuration file /application/nginx-1.12.2/conf/nginx.conf syntax is ok  
  3. nginx: configuration file /application/nginx-1.12.2/conf/nginx.conf test is successful  
  4. [root@Web01 memadmin]# nginx -s reload  

5.三、浏览器访问

根据提示,默认的用户名和密码都是admin,能够在config.php中修改

输入用户名密码登陆并绑定服务器,这里绑定的是安装了memcached服务的数据库服务器192.168.1.51,能够进行相关操做,图形化界面操做不做介绍,功能不少,缺乏的只是发现的眼睛

 

 

博主原创文章,转载请务必注明出处