A-A+

Memcache介绍

2015年12月15日 Linux, php 暂无评论 阅读 2,054 views 次

1、什么是Memcache

2、在什么时候使用Memcache

3、怎样使用Memcache优化网站或API接口

一、基础知识

1、什么是Memcache:是一套分布式缓存系统。

分布式:可以在多台服务器上部署Memcache服务,达到集群的效果;

高速:Memcache所有的数据都是维护在内存中的;

2、Memcache有什么用?

缓解数据库的压力:当应用的访问量特别大的时候,数据库的压力会非常大,memcache就是在应用和数据库之间增加一个缓存层,作用是数据库在之前读取过的数据,被缓存在内存中,之后再次访问就可以从内存中直接读取,而不需要再次访问数据库,从而减轻mysql等数据库的压力。(数据库问题一直是PHP程序的短板)

3、如何理解memcache

简单理解,memcache是只有一张表的数据,这张表只有2个字段:key=>value; key就是数据的id用来查找数据的唯一性,value就是保存的数据。

二、memcache的使用场景

1、memcache是非持久化存储:因为存储在内存中,所以重启断电等就会丢失数据。memcache对数据存储要求不高,即使数据丢失也不会有影响,再次从数据库读取即可。

2、memcache是分布式存储:不适合单机使用,单机情况下还是就用其他组件或者直接从数据库读取比较好,因为memcache对内存的消耗非常大。或者可以把memcache单独装到另外一台机器上,不要和web服务器放在同一台主机上。

3、key/value存储:格式简单,不支持list、array数据格式;

三、安装Memcache的方式

方法1、编译安装libevent Memcache;

编译安装的好处是在安装的时候可以自定义的设置

方法2、使用依赖管理工具yum、apt-get

ps:

memcache有两个版本分别是Memcache和Memcached。Memcached是Memcache的升级版本,Memcached比memcache有更多的操作、速度和稳定性上也好的多。下面的操作都是memcached。

四、Memcache服务器的安装

环境:centos64位

1、安装Memcached服务端

yum install memcached

/usr/bin/memcached -d -l 127.0.0.1 -p 8000 -m 512 -u root

ps -ef | grep memcach

五、安装memcached客户端

1、安装libmemcached;

2、为php安装memcached的扩展;

先提前下载安装包,然后解压

tar zxvf libmemcached-1.0.18.tar.gz

ls

开始编译安装

./configure  --prefix=/usr/lib/libmemcached

make && make install

安装PHP扩展

tar zxvf libmemcached-2.2.0.tgz

cd memcached-2.2.0

phpize

ls

./configure --with-php-config=/usr/local/bin/php-config --with-libmemcached-dir=/usr/lib/libmemcached --disable-memcached-sasl

make

make install

vim /usr/local/php/etc/php.ini

在文件底部添加刚刚安装的扩展

extension = memcached.so

重启服务器lnmp restart

php -m | grep memcached

 

六、PHP中使用Memcache

<?php

$m = new Memcached();  //实例化

$array = array(

array('127.0.0.1',8000),

array('127.0.0.2',8000)

);

$m->addServer($array);

print_r($m->getStatus());

 

标签:

给我留言