Memcache的简单笔记

简介:

一、原理和流程

   Memcache是高性能的分布式的内存缓存系统,一般作为数据库的前端cache使用,来减轻数据库的压力,提高系统对数据的响应速度;

其特征如下:

(1)协议简单,基于libevent的事件处理;

(2)内置的内存管理方式;使用LRU算法,当数据快占满指定的内存空间时,新数据会重用过期数据的内存空间;

(3)每个MEMCACHE服务器相对独立,互不通信;

在系统应用中,其操作流程如下:

(1)当客户端查询数据时,先查看memcache是否存在,如果存在,直接把请求的数据返回给客户端,不再进行下一步的操作;

(2)如果请求的数据不在memcahe中,客户端就去查询数据库,然后把查询到数据返回给客户端,同时将数据存放一份副本到mencache中;

(3)每次更新数据库的同时更新memcache中的数据,保证memcahe中的数据尽量最新;

(4)指定的内存使用完毕后,会使用LRU(Least Recently Used)策略,新数据替换失效的数据,然后是最近未被使用的数据;


二、安装、启动和关闭

(1)安装libevent;

1
2
3
4
wget https: //sourceforge .net /projects/levent/files/libevent/libevent-2 .0 /libevent-2 .0.22-stable. tar .gz 
tar  -axvf libevent-2.0.22-stable. tar .gz
cd  libevent-2.0.22-stable
. /configure  &&  make  &&  make  install

(2)安装memcache

1
2
3
4
wget http: //memcached .org /files/memcached-1 .4.22. tar .gz
tar  -axvf memcached-1.4.22. tar .gz
cd  memcached-1.4.22
. /configure  &&  make  &&  make  install

(3)启动memcache

1
/usr/local/bin/memcached  -u root -m 128 -P  /var/run/memcached .pid -d

*关于memcached参数可以通过“/usr/local/bin/memcached -h”来查看

(4)关闭memcache

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


三、简单操作

(1)进入memcache

1
2
3
4
5
6
7
8
telnet 127.0.0.1 11211  #telnet进入memcache界面
set  test   0 0 10     #存入test
this              #输入test的值
STORED             #返回存入成功
get  test            #查询test的值
VALUE  test  0 10
this              #返回test的值
END

*类似的命令还有add、replace

(2)查询memcache的各种统计状态

1
2
3
4
stats      #查询memcache的各种统计状态
stats reset  #重置各种状态统计结果
stats items  #显示slabs中items的数目
stats slabs  #显示slabs信息


四、memcache的监控

利用memcache.php进行监控,下载memcache.php

1
wget http: //pecl .php.net /get/memcache-2 .2.7.tgz

将其解压缩到nginx或者apache的根目录

修改memcache.php文件中下面的行,可添加多台memcache监控;

1
$MEMCACHE_SERVERS[] =  'mymemcache-server:11211' ;

 



本文转自 bannerpei 51CTO博客,原文链接:http://blog.51cto.com/281816327/1621298,如需转载请自行联系原作者


相关文章
|
存储 缓存 监控
memcache的安装及使用详解
memcache的安装及使用详解
|
存储 缓存 监控
redis入门笔记 3
redis入门笔记
150 0
redis入门笔记 3
|
存储 NoSQL 算法
redis入门笔记 2
redis入门笔记
139 0
|
存储 NoSQL Java
redis入门笔记 1
redis入门笔记
138 0
|
存储 SQL NoSQL
Redis学习笔记( 入门篇)
Redis学习笔记( 入门篇)
Redis学习笔记( 入门篇)
|
存储 缓存 算法
Memcache学习总结
Memcache学习总结
103 0
Memcache学习总结
|
SQL 算法 Unix
九爷带你了解 深入理解 Memcache 原理
深入理解Memcache原理 1.为什么要使用memcache  由于网站的高并发读写需求,传统的关系型数据库开始出现瓶颈,例如: 1)对数据库的高并发读写: 关系型数据库本身就是个庞然大物,处理过程非常耗时(如解析SQL语句,事务处理等)。
1014 0
|
存储 NoSQL 关系型数据库
Redis入门笔记
Redis入门笔记http://www.bieryun.com/3156.html 一、Redis概述 Redis由来 2008年,意大利的一家创业公司MeRzia推出了一款基于MySQL的网站实时统计系统 LLOOGG,然而没过多久该公司的创始人 SalvatoRe Sanfilippo 便对MySQL 的性能感到失望,于是他决定亲自为 LLOOGG 量身定做一个 数据库,并并于 2009 年开发完成,这个数据库就是Redis。
1346 0
|
存储 缓存 移动开发
|
存储 NoSQL 数据库

热门文章

最新文章