1.简介:
Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它经过在内存中缓存数据和对象来减小读取数据库的次数,从而提升动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,可是客户端能够用任何语言来编写,并经过memcached协议与守护进程通讯php
2.为何要用?html
MySQL:磁盘上的数据库,读写速度都比较慢
Memcached:内存中的数据库,读写速度都比较快,缺点就是数据容易丢失。前端
数据存储,数据仓库选择MySQL这种磁盘数据库。
在高并发,业务比较大的状况下建议选择Memcached数据库nginx
工做中,MySQL和Memcached一块儿使用
3.Memcached在企业的应用场景web
做为数据库的前端缓存应用,减小数据库被高并发大量的访问的压力数据库
优势:
Ⅰ.对于用户来说,用户访问网站更快了,查询数据直接能够从memcached数据库直接调取数据信息
Ⅱ.对于网站来讲,数据库下降了压力,只有当内存没有数据时才会请求MySQL数据库。
Ⅲ. 提高了网站并发访问的效率,减小服务器的数量centos
4.环境准备浏览器
centos6.9 web1 IP 10.0.0.7 可以打开word press
centos7.2 memcached IP 10.0.0.21缓存
5.安装Memcached服务器
centos7.2主机安装:
yum -y install memcached
systemctl start memcached.service
测试:
建立:
[root@cache01 ~]# printf "set key008 0 0 10\r\noldboy0987\r\n"|nc 10.0.0.21 11211
STORED
查看:
[root@cache01 ~]# printf "get key008\r\n"|nc 10.0.0.21 11211
VALUE key008 0 10
oldboy0987
END
删除:
[root@cache01 ~]# printf "delete key008\r\n"|nc 10.0.0.21 11211
DELETED
7.web01操做
上传软件包
tar zxvf memcache-2.2.5.tgz
cd memcache-2.2.5
/application/php/bin/phpize
./configure --enable-memcache --with-php-config=/application/php/bin/php-config --with-zlib-dir
make
make install
执行成功后:
sed -i '$a extension=memcache.so' /application/php/lib/php.ini
pkill php
/application/php/sbin/php-fpm -t
/application/php/sbin/php-fpm
/application/php/bin/php -m|grep memcache
执行成功后:
7.PHP代码测试
cat >>/application/nginx/html/blog/mc.php<<'EOF'
<?php
$memcache = new Memcache;
$memcache->connect('10.0.0.21', 11211) or die ("Could not connect");
$memcache->set('key20180314', 'hello,world');
$get_value = $memcache->get('key20180314');
echo $get_value;
?>
EOF
8.WEB管理memcached
tar xf memadmin-1.0.12.tar.gz -C /application/nginx/html/blog/
浏览器访问http://blog.etiantian.org/memadmin
!
cd /application/nginx/html/blog/wp-content/
rz
grep 127.0.0.1 object-cache.php
sed -i 's#127.0.0.1#10.0.0.21#' object-cache.php
web使用word press上传博文利用memcached查看缓存