枫叶飞翔 发表于 2018-12-25 07:50:49

memcached的基本安装与使用

  
简介:
Memcached是一款开源、高性能、分布式内存对象缓存系统,可应用各种需要缓存的场景,其主要目的是通过降低对Database的访问来加速web应用程序。它是一个基于内存的“键值对”存储,用于存储数据库调用、API调用或页面引用结果的直接数据,如字符串、对象等。

特性:
Memcached是一款开发工具,它既不是一个代码加速器,也不是数据库中间件。其设计哲学思想主要反映在如下方面:
1. 简单key/value存储:服务器不关心数据本身的意义及结构,只要是可序列化数据即可。存储项由“键、过期时间、可选的标志及数据”四个部分组成;
2. 功能的实现一半依赖于客户端,一半基于服务器端:客户负责发送存储项至服务器端、从服务端获取数据以及无法连接至服务器时采用相应的动作;服务端负责接收、存储数据,并负责数据项的超时过期;
3. 各服务器间彼此无视:不在服务器间进行数据同步;
4. O(1)的执行效率,查找效率非常之高;
5. 清理超期数据:默认情况下,Memcached是一个LRU缓存,同时,它按事先预订的时长清理超期数据;但事实上,memcached不会删除任何已缓存数据,只是在其过期之后不再为客户所见;而且,memcached也不会真正按期限清理缓存,而仅是当get命令到达时检查其时长;

常见操作命令:
Memcached提供了为数不多的几个命令来完成与服务器端的交互,这些命令基于memcached的协议实现。
存储类命令:set, add, replace, append, prepend
获取数据类命令:get, delete, incr/decr
统计类命令:stats, stats items, stats slabs, stats sizes
清理命令: flush_all

安装memcached(rpm包安装):
前提:已经搭建好lamp或者lnmp
# yum install -y php php-devel httpd mysql mysql-server

1、yum安装memcached
# yum groupinstall "Development Tools" "Server Platform Deveopment" -y       安装开发包组
# yum install -y memcached

2、启动memcached服务
# service memcached start

3、telnet简单测试
# telnet 127.0.0.1 11211
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
add testkey 0 20 1               缓存一个键testkey,序列0 缓存时间20S 1字节
x                                           值为x
STORED
get testkey                     请求testkey
VALUE testkey 0 1
x                                                       值为x
END
get testkey             20秒后再次请求,就没有值了
END

4、为php安装memcache插件

1.安装memcache插件
#tar xf memcache-2.2.7.tgz
#cd memcache-2.2.7
#phpize
#./configure --with-php-config=/usr/bin/php-config
#make && make install(安装完成会出现下方提示)
Installing shared extensions: /usr/lib64/php/modules/

2.配置php支持memcache
# vim /etc/php.ini
extension = "/usr/lib64/php/modules/memcache.so"   添加此行
# service httpd restart

4、创建PHP页面测试
# vim /var/www/html/index.php

页: [1]
查看完整版本: memcached的基本安装与使用