Memcache学习笔记一

简介: 过年期间,看了一些Memcache的资料,整理了一个PPT。 Memcached分析 View more presentations from Wonwang. 收获最大的部分,我觉得是在应用上如何更好的对缓存进行使用和处理,来解决 Cache Stamples 的问题。

过年期间,看了一些Memcache的资料,整理了一个PPT。

收获最大的部分,我觉得是在应用上如何更好的对缓存进行使用和处理,来解决 Cache Stamples 的问题。通常只进行一次缓存判断的逻辑,在应对高并发的访问时,经常会引起问题,因此增加锁机制和Mutex就非常必要。

Memcache服务器的状态

如果有人反映memcache链接比较慢的时候,可以按照下面的步骤来进行查看

首先检查Memcached服务器组的 listen_disabled_num 参数,这个参数表明了这台服务器曾经达到最大连接的次数,这个数字当然是越小越好,如果这个数字不断快速的增长,我们就该小心我们的服务了。

accepting_conns 这个参数与上一个有关,我们可以简单的查看这个值是 1 或者 0 来判断服务器是否达到过最大连接。

curr_connections 这个状态显示了当前连接到服务器上的数量,注意这个数字不要超过设置的最大值

limit_maxbytes 当前服务器可以使用的最大内存数量,实际上服务器中的 memcached 进程占用的内存会比这个数字大一些

cmd_flush 服务器上执行了 flush_all 的次数

evictions 这个数字表示一些项目还没有过期,但是因为 slab 中已经没有可用的空间,导致最后根据LRU算法被剔除的情况

一些统计数值

缓存命中率:计算公式 get_hits / ( get_hits + get_misses ) 服务器的缓存命中率,越高越好

 

另外,可以使用下面这个脚本进行服务器的测试

测试脚本:http://consoleninja.net/code/memcached/mc_conn_tester.pl

 

利用Cacti监控Memcached

Cacti作为一套成熟的系统,可以用来绘制与Memcached相关的各种统计图表。下面提供的插件可以结合Cacti进行绘图,但是需要下面几个要求:1、系统已经安装了Cacti;2、已经安装好了Memcached;3、Cacti的机器上同时安装了Python;4、安装了Python的Memcached客户端。

下面是一些截图

image

下载Cacti取数据的脚本:Cacti-memcached-1.0.tar.gz

安装配置过程:
1、下载Python的客户端API,python-memcached-1.47.tar.gz
2、解压后安装

tar –xvzf python-memcached-1.47.tar.gz

python setup.py install

3、下载Cacti的模板,Cacti-memcached-1.0.tar.gz

4、解压缩,然后将 memcached.py 拷贝到 cacti 的 /scripts/ 目录中
5、为了确认这个脚本是否能够正常运行,可以运行脚本进行测试

python memcached.py hostname

image

正常情况下,我们可以取得所连接服务器的一些数据。

6、登录进入Cacti系统,选择导入模板,选择我们下载的模板中的 cacti_memcached_host_template.xml 文件,其它选项保持默认,进行保存

此时,我们在Cacti系统中引入模板就已经完成了,你会看到成功的提示,并且有一些相关的信息显式或者一些报错的界面。如果没有成功,可以参考这里的帮助

7、系统的配置和使用

安装完成后,我们可以在新建Device时看到对应的模板,如下图

image

对于已经存在的Device,也可以在Associated Graph Templates中选择对应的模板

image

8、之后就可以在Graph中看到对应图表了。

 

 

Technorati 标签: Memcache, Linux, 缓存, Key-value

参考资料
1、Memcached Wiki Timeouts
2、利用Cacti监控Memcached
3、Memcached数据被踢现象分析(evicitions>0)

相关文章
|
存储 Java Memcache
Memcache入门
说来惭愧,第一次听说Memcache是在大约在6个月前。作为一个搞J2EE开发的,工作一年多了,都没听说过Memcache实在是惭愧。 当时是换了新工作,第一个任务是开发一个报表系统供公司内部使用。为了使系统能7*24小时提供服务,老大说搞两台服务器吧,然后弄个Memcache。
780 0
|
存储 缓存 算法
Memcache学习总结
Memcache学习总结
109 0
Memcache学习总结
|
监控 数据库 Memcache
|
存储 缓存 网络协议
我的 memcache 笔记
  这两天在学习 memcache,手册里都是英文的,我自己翻译了一下,水平有限,希望高手给予斧正,谢谢先!   Memcache Functions 函数参考 ============================================================ 简介   Memcache 模块提供给程序和对象方便的接口用于内存缓存,特别是用于设计动态 web 程序时减少数据库的访问,高效的一个缓存守护进程。
847 0
|
存储 缓存 移动开发
|
数据库 Memcache 缓存
|
PHP Windows Memcache
memcache
引用:http://www.itlearner.com/article/4326 1. 下载memcache的windows稳定版,解压放在c:memcached2. 在终端下输入 'c:memcachedmemcached.
908 0
|
缓存
Memcache的使用
引用:http://hi.baidu.com/willian_zy/item/3d3d3758e23aa9c8d2e10c1d     在一些对数据读取速度要求较高的系统中,二级缓存无疑是必须的,他可以将一些常用而又不常更新的数据缓存起来,减少了与数据库直接交互的次数,这样显然提高了速度!为了积累自己的知识,我就将它的用法记录下来,以便于日后使用! 1.
871 0
|
Linux Windows Memcache
关于memcache
一 安装 1、linux环境下:/usr/local/lib/memcached -d -m 2048 -u root -c 1024 -p 11211 -P /tmp/memcached1.pid/usr/local/lib/memcached -d -m 2048 -u root -c 1024 -p 11211 -P /tmp/memcached2.
793 0

热门文章

最新文章