waid 发表于 2018-12-25 13:09:59

linx LNMP扩展之memcached+LNMP组合

     这里承接我上一篇所搭建的LNMP服务器:
   Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度,memcached的API使用三十二位元的循环冗余校验(CRC-32)计算键值后,将资料分散在不同的机器上。当表格满了以后,接下来新增的资料会以LRU机制替换掉。由于memcached通常只是当作快取系统使用,所以使用memcached的应用程式在写回较慢的系统时(像是后端的数据库)需要额外的程式码更新memcached内的资料。Memcached是一款开源、高性能、分布式内存对象缓存系统,可应用各种需要缓存的场景,其主要目的是通过降低对Database的访问来加速web应用程序。它是一个基于内存的“键值对”存储,用于存储数据库调用、API调用或页面引用结果的直接数据,如字符串、对象等。
  1、启动Memcache 常用参数
  -p       设置TCP端口号(默认不设置为: 11211)

  -U       UDP监听端口(默认: 11211, 0 时关闭)
  -l   绑定地址(默认:所有都允许,无论内外网或者本机更换IP,有安全隐患,若设置为127.0.0.1就只能本机访问)
  -d            以daemon方式运行
  -u绑定使用指定用于运行进程
  -m       允许最大内存用量,单位M (默认: 64 MB)
  -P      将PID写入文件,这样可以使得后边进行快速进程终止, 需要与-d 一起使用
  2、连接

  telnet 127.0.0.1 11211

  3、基本命令

  
  存储类命令:set, add, replace, append, prepend
  获取数据类命令:get, delete, incr/decr
  统计类命令:stats, stats items, stats slabs, stats sizes
  清理命令: flush_all
  command   

  参数             用法
  key            key 用于查找缓存值
  flags            可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息
  expiration time    在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)
  bytes            在缓存中存储的字节点
  value            存储的值(始终位于第二行)
  

  set

     命令用于向缓存添加新的键值对。如果键已经存在,则之前的值将被替换。如果使用 set 命令正确设定了键值对,服务器将使用单词 STORED 进行响应。
  

  add
     仅当缓存中不存在键时,add 命令才会向缓存中添加一个键值对。如果缓存中已经存在键,则之前的值将仍然保持相同,并且您将获得响应 NOT_STORED。
  replace
      仅当键已经存在时,replace 命令才会替换缓存中的键。如果缓存中不存在键,那么您将从 memcached 服务器接受到一条 NOT_STORED 响应。
  最后两个基本命令是 get 和 delete。
  LNMMP的组合其实是PHP和memcached的组合,那它们是怎么样组合使用的呢,接下来就演示一下
  前提:
  再起一台虚拟主机:
  主机地址为 :172.16.24.100(这个做为memcached服务器,上面只安装memcached)
  安装memcached:
  

  # yum install memcached
  # tail /etc/passwd
页: [1]
查看完整版本: linx LNMP扩展之memcached+LNMP组合