Memcached
什么是Memcached?
免费并且开源,高性能的分布式内存对象缓存系统,通过减轻数据库负载来加速动态web应用程序的使用。
一种内存中的键值存储,用于从数据库调用、API调用或页面呈现的结果中获得少量任意数据(字符串、对象)
PHP 的扩展(服务名)
优点
简单而强大
促进了快速部署,简化了开发
解决大型数据缓存面临的许多问题
它的API适用于大多数流行语言
支持 binary protocol 协议
支持对同一key的多进程的并发处理问题
安装
- 安装phpize
apt-get install php7.0-dev - 安装memcached&依赖
apt-get install memcached
apt-get install libmemcached11 libmemcached-dev libmemcachedutil2 - 安装memcached拓展
- apt-cache search -n php7.0 # 查看 php7.-0 的软件包
- git clone https://github.com/php-memcached-dev/php-memcached.git # 下载 memcached 到本地仓库,并切换到 php7 版本
- cd php-memcached/ # 进入memcached目录
- git checkout php7 # 切换分支
- phpize
- ./configure --disable-memcached-sasl
- apt-get install pkg-config (如果第六步有报错执行该步骤在执行第六步,如果没有则直接跳过)
- make && make install # 编译安装(编译安装完成后会返回 buil completed 提示信息以及你的扩展地址,记住该路径)
- vi /etc/php/7.0/fpm/conf.d/memcached.ini #把扩展添加进php中
- extension=/usr/lib/php/20151012/memcached.so #完成第9步之后写入该步骤的内容
- vi /etc/php/7.0/apache2/php.ini # 把扩展添加进php中
- extension=/usr/lib/php/20151012/memcached.so #完成第11步之后写入该步骤的内容(写入到差不多866行左右的位置)
- 重启Apache2
- 访问phpinfo看是否有memcached拓展
Memcache
什么是Memcache?
免费并且开源,高性能的分布式内存对象缓存系统,通过减轻数据库负载来加速动态web应用程序的使用。
一种内存中的键值存储,用于从数据库调用、API调用或页面呈现的结果中获得少量任意数据(字符串、对象)
PHP 的扩展(服务名)
优点
简单而强大
促进了快速部署,简化了开发
解决大型数据缓存面临的许多问题
它的API适用于大多数流行语言
支持对同一key的多进程的并发处理问题
安装
- 安装phpize(如果已经安可直接跳过)
apt-get install php7.0-dev - 安装memcache
-
git clone https://github.com/websupport-sk/pecl-memcache memcache # # 下载 memcached 到本地
-
cd memcache # 进入memcache目录
-
phpize
-
whereis php-config # 查找php-config目录
php-config: /usr/bin/php-config /usr/share/man/man1/php-config.1.gz -
./configure --enable-memcache --with-php-config=/usr/bin/php-config --with-zlib-dir # 编译
-
make && make install # 编译安装(编译安装完成后会返回 buil completed 提示信息以及你的扩展地址,记住该路径)
-
vi /etc/php/7.0/apache2/php.ini # 把扩展添加进php中
-
extension=/usr/lib/php/20151012/memcached.so #完成第7步之后写入该步骤的内容(写入到差不多866行左右的位置)
-
重启Apache2
-
访问phpinfo看是否有memcached拓展
Memcache存放SESSION
修改php.ini配置文件
-
- vi /etc/php/7.0/apache2/php.ini # 打开php.ini配置文件
- 找到session.save_handler,并设为 session.save_handler = memcache,把session.save_path前面的分号去掉,并设置为 session.save_path = “tcp://127.0.0.1:11211″
- 重启服务sudo service apache2 restart
.htaccess
php_value session.save_handler “memcache”
php_value session.save_path “tcp://127.0.0.1:11211″
临时生效
ini_set(“session.save_handler”, “memcache”);
ini_set(“session.save_path”, “tcp://127.0.0.1:11211″);