>데이터 베이스 >MySQL 튜토리얼 >用Memcached缓存MySQL数据

用Memcached缓存MySQL数据

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-06-07 17:24:44756검색

Memcached使用了libevent来均衡任何数量的打开链接,使用非阻塞的网络I/O,对内部对象实现引用计数(因此,针对多样的客户端,对象

Memcached是一个分布式的内存对象缓存系统,通常用于动态Web应用以减轻数据库负载。
 
Memcached是基于一个存储键对的hashmap,当表格满了以后,就使用LRU(最近最小使用)算法机制替换掉。
 
Memcached使用了libevent来均衡任何数量的打开链接,,使用非阻塞的网络I/O,对内部对象实现引用计数(因此,针对多样的客户端,对象可以处在多样的状态), 使用自己的页块分配器和哈希表,因此虚拟内存不会产生碎片并且虚拟内存分配的时间复杂度可以保证为O(1).
 
下面具体说明在CentOS环境下安装memcached并结合mysql,php来测试Memcache的缓存机制
 
1、安装memcached
 
wget
 
wget
 
 
 
tar xf libevent-1.4.8-stable.tar.gz
 
cd libevent-1.4.8-stable
 
./configure
 
make && make install
 
ln -sv /usr/local/lib/libevent* /usr/lib/
 
 
 
tar xf  memcached-1.4.15.tar.gz
 
cd memcached-1.4.15
 
./configure
 
make && make install
 
 
 
尝试启动memcached,启动方法
 
[root@www ~]#memcached -d -unobody -m50 -p11211 -P /tmp/memcached.pid
 
说明:
 
-d 以独立方式运行
 
-u 以什么用户启动
 
-m 占用内存大小(默认是100)
 
-p 监听端口号
 
-P 指定pid位置
 
不报信息就ok,netstat -tnlp查看一下

2、为php安装memcached扩展(我是用的是php5.4.4)
 
[root@www ~]#wget
 
[root@www ~]#tar zxvf memcache-2.2.5.tgz
 
[root@www ~]#cd memcache-2.2.5/
 
[root@www ~]#/usr/local/php/bin/phpize
 
[root@www ~]#./configure --with-php-config=/usr/local/php/bin/php-config
 
[root@www ~]#make
 
[root@www ~]#make install
 
在配置文件中添加memcache扩展,命令如下
 
sed -i 's#extension_dir = "./"#extension_dir = "/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20100525/"\nextension = "memcache.so"#' /usr/local/php/etc/php.ini

linux

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.