jane27 发表于 2018-12-25 11:07:09

LNMP架构添加memcached

  为LNMP架构添加memcached支持,并完成对缓存效果的测试报告;
  memcache由LiveJournal的Brad Fitzpatrick开发,是一个自由、高性能、分布式的分布式内存对象缓存系统,
  用于动态Web应用以减轻数据库的负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高了网站访问的速度。
  MemCaChe是一个存储键值对的HashMap,在内存中对任意的数据(比如字符串、对象等)所使用的key-value存储,
  数据可以来自数据库调用、API调用,或者页面渲染的结果。
  测试环境为:   服务器为192.168.1.188    centos7.2         用一台服务器测试:
  一、创建LNMP架构:
  #yum install mariadb-server -y                                                ###安装mariadb
  #vim /etc/my.cnf
  skip_name_resolve= ON
  innodb_file_per_table= ON
  #systemctl start mariadb.service
  #yum install php-fpm php-mysql php-mbstring php-gd php-xml -y
  ###安装php-fpm
  #systemctl start php-fpm
  #yum install nginx -y                                                                ###安装nginx
  # vim /etc/nginx/nginx.conf                                             ###编辑nginx配置
  location ~ \.php$ {
  root html;
  fastcgi_pass    127.0.0.1:9000;
  fastcgi_index   index.php;
  fastcgi_param SCRIPT_FILENAME/usr/share/nginx/html$fastcgi_script_name;
  include               fastcgi_params;
  }
  #systemctl start nginx
  二、下面我们来使用memcached:
  #yum install memcached -y                              ###安装memcached
  #systemctl start memcached.service
  # ss-tunl                                                            ###监听在tcp和udp11211端口
  udp    UNCONN    0      0             :::11211                     :::*
  tcp    LISTEN    0      128            *:11211                      *:*
  mencached默认工作于文本协议,使用telnet来连接:
  #yum -y install telnet
  #telnet 192.168.0.188 11211
  Trying192.168.0.188...
  Connected to192.168.0.188.
  Escape characteris '^]'.
  stats                                                                                    ###列出当前MemCache服务器的状态
  STAT pid 3540                                                                      ###进程id
  STAT uptime 25383                                                            ###运行时间
  STAT time1503608657                                                         ###当前时间戳
  STAT version1.4.15                                                               ###版本号
  STAT libevent2.0.21-stable                                                   ###libvent版本
  STAT pointer_size64                                                             ###当前操作系统的指针大小
  STAT rusage_user1.063021                                                ###进程的累积用户时间
  STAT rusage_system0.664388                                              ###累积系统时间
  STATcurr_connections 10                                                   ###服务器当前存储的items数量
  STATtotal_connections 11                                                    ###启动以后存储的items总数量
  STATconnection_structures 11                                             ###服务器分配的连接构造数
  STAT reserved_fds20
  STAT cmd_get 0                                                                     ### get命令(获取)总请求数
  STAT cmd_set 0                                                                      ### set命令(获取)总请求数
  STAT cmd_flush 0                                                                   ### flush命令请求数
  STAT cmd_touch 0                                                                  ### touch命令请求次数
  STAT get_hits 0                                                                     ###总命中次数
  STAT get_misses 0                                                                  ###未命中次数
  STAT delete_misses0                                                            ### delete命令未命中次数
  STAT delete_hits 0                                                                  ### delete命中次数
  STAT incr_misses 0
  STAT incr_hits 0
  STAT decr_misses 0
  STAT decr_hits 0
  STAT cas_misses 0
  STAT cas_hits 0
  STAT cas_badval 0
  STAT touch_hits 0
  STAT touch_misses0
  STAT auth_cmds 0                                                             ###认证命令处理次数
  STAT auth_errors 0                                                            ###认证失败数
  STAT bytes_read 19                                                         ###总读取字节数(请求字节数)
  STAT bytes_written14                                                      ###总发送字节数(结果字节数)
  STATlimit_maxbytes 67108864                                    ###分配给memcached的内存大小(字节)
  STATaccepting_conns 1                                                   ###服务器是否达到最大连接(0/1
  STATlisten_disabled_num 0                                                ###失效的监听数
  STAT threads 4                                                                   ###当前线程数
  STAT conn_yields 0                                                            ###连接操作主动放弃数
  STAThash_power_level 16
  STAT hash_bytes524288
  STAThash_is_expanding 0
  STAT bytes 0                                                                         ###当前存储占用的字节数
  STAT curr_items 0                                                               ###当前存储的数据总数
  STAT total_items 0                                                                ###启动以来存储的数据总数
  STATexpired_unfetched 0
  STAT evicted_unfetched0
  STAT evictions 0
  STAT reclaimed 0                                                             ###已过期的数据条目来存储新数据的数目
  END
  #yum install libmemcached-y   ### 提供工具程序的程序包
  三、安装PHP的memcached的扩展
  php连接memcached服务的模块有两个,php-pecl-memcache和php-pecl-memcached.
  若要安装php-pecl-memcached需要依赖libmemcached程序包,可以提供相应操作查看memcached的工具。
  在这里为方便演示就直接使用php-pecl-memcache扩展模块。
  #yum install php-pecl-memcache -y
  测试PHP是否支持Memcached
  #vim /usr/share/nginx/html/index.php
  
https://s1.运维网.com/wyfs02/M01/A6/0D/wKioL1nIiC7Rjci5AAB5uHmRPc4597.png
  四、测试memcached缓存
  # vim/usr/share/nginx/html/test.php          ###编辑测试页
  
页: [1]
查看完整版本: LNMP架构添加memcached