您的位置:首页 > 数据库 > Memcache

Memcached入门

2015-12-21 23:24 585 查看

Memcached简介

Memcached是一个
免费开源的
高性能的
、具有
分布式内存对象
的缓存系统,它通过减少数据库负载加速动态Web应用。目前全世界很多用于都使用它来构建大负载网站或提高网站的响应速度。

Memcache是这个项目的名称,Memcached是服务器端的主程序文件名。

Memcached是一种内存缓存,把经常存取的对象或数据缓存在内存中,内存中缓存的这些数据通过API的方式被存取,数据就像一张大的HASH表,以Key-value对的方式存在。Memcached通过缓存经常被存取的对象或数据,来减轻数据库的压力,提高网站的响应速度,这样去构建速度更快地可扩展的Web应用。


Memcached的特征

协议简单

使用基于文本行的协议

能直接通过telnet在Memcached服务器上存取数据

基于libevent的事件处理

确保了服务器端的连接数增加时也能发挥很好地性能

内置的内存管理方式

重用过期数据的内存空间

注意:

Memcached是为缓存系统设计的,没有考虑数据的容灾问题,和机器的内存一样,重启机器后数据将会丢失。

互不通信的Memcached之间具有分布特征

每个Memcached服务器之间互相不通信,都是独立的存取数据,不共享任何信息,通过对客户端的设计,让Memcached具有分布式,能支持海量缓存和大规模应用。

Memcached的使用 - CentOS

安装

先安装libevent,然后再安装memcached,都是执行以下三个命令即可:

./configure

make

make install

启动 - 本示例版本: Version1.4.25

sudo /usr/local/memcached/bin/memcached -m 32m -p 11211 -d -u root -P /var/run/memcached.pid -c 256 -vv

参数说明:
* -m:最大内存大小。默认为64MB
* -p:使用的TCP端口。默认为11211
* -d:作为守护进程在后台运行
* -u:运行memcached的用户,默认不能由root用户启动,所以需要指定
* -P:设置保存Memcached的pid文件
* -c:最大运行的并发连接数,默认是1024,这个按需配置
* -vv:以very verbose模式启动,将调试信息和错误输出到控制台


连接测试

执行命令: telnet localhost 11211

返回:



读写Memcached



输入的命令序列:

1. set temp 0 0 10

2. temp_value - 说明:输入的key为temp存入的数据

到这里,已经把temp值写入到memcached了 - STORED是写入后返回的结果说明


3. get temp

4. quit - 退出连接

关闭Memcached

前面在启动时,使用了-P参数,这里关闭引用到了:

kill `cat /var/run/memcached.pid`

安装Memcache的PHP扩展

http://pecl.php.net网站下载扩展包,本次使用memcached-2.0.0.tgz

执行命令: /usr/local/php/bin/php-config

执行命令: ./configure –enable-memcache –with-php-config=/usr/local/php/bin/php-config

提示找不到libmemcached,去下载libmemcached安装
wget https://launchpad.net/libmemcached/1.0/1.0.9/+download/libmemcached-1.0.9.tar.gz[/code] 
安装:./configure –prefix=/usr/local/libmemcached –with-memcached

提示错误,找不到event, 执行命令: sudo yum install libevent-devel

重新执行./configure –prefix=/usr/local/libmemcached –with-memcached, make , make install即可

执行命令: ./configure –enable-memcached –with-php-config=/usr/local/php/bin/php-config –with-libmemcached-dir=/usr/local/libmemcached

make && make install

完成后有如下输出:



修改php.ini文件,把php.ini中的extention_dir=”./”修改为:extensin_dir=”/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/”

未调试好支持php连接memcached
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  memcached 缓存系统