设为首页 收藏本站
查看: 1489|回复: 0

[经验分享] memadmin php展示memcahe状态信息

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-8-15 10:24:06 | 显示全部楼层 |阅读模式
memcache相关知识点总结
1)memcahe是什么
  memcache是一款开源的、高性能高并发纯内存缓存服务软件,C/S B/S架构

2)memcache的作用
  memcache通过事先规划好的内存空间,临时缓存数据库数据,减少业务对数据库的直接高并发访问,达到提升数据库的访问性能,加速网站集群动态应用服务的能力

3)常见缓存软件
   a. expires web配置浏览器端缓存,静态图片、JS、CSS、HTML等
   b. memcache 纯内存型,后端数据库中的数据,博文、用户信息等
   c. memcached 内存加磁盘,sina利用memcache+BDB
   d. rdis 内存加磁盘,持久化存储

4)memcache在企业架构总应用场景
   a.完整缓存(静态缓存),如网站中商品分类信息纯静态内容
   b.热点缓存(配合前端web缓存访问频率较高的内容,还要配合数据库进行不定时更新)
   c.作为集群seesion会话共享存储

5)memcache分布式集群
   memcache集群和web集群不太一样,所有memecache数据总和<=数据库总和
   1470720151297530.jpg
  a.程序端实现:程序加载所有mc的IP列表,通过对key做hash(一致性哈希)
   举个列子,假设有3个客户端1, 2, 3,3台memcached A, B, C:
 Client 1想把数据"barbaz"以key "foo"存储。Client 1首先参考节点列表(A, B, C),计算key "foo"的哈希值,假设memcached B被选中。接着,Client 1直接connect到memcached B,通过key "foo"把数据"barbaz"存储进去。Client 2使用与Client 1相同的客户端库(意味着阶段一的哈希算法相同),也拥有同样的memcached列表(A, B, C)。
 于是,经过相同的哈希计算(阶段一),Client 2计算出key "foo"在memcached B上,然后它直接请求memcached B,得到数据"barbaz"
  b.负载均衡:通过对key做hash

6)memcache内存管理机制原理
   a.Mc早期使用的内存管理机制为malloc,malloc容易产生内存碎片,导致系统整体性能下降
   b.现在都是使用的Slab机制来管理和分配内存
   c.memcache提前将内存分配为大小为1M的若干个Slab,然后再对每个slab进行小对象的填充chunk,用于缓存真实的数据
   d.将大小相同的chunk组合成slab calss组,避免大量重复的初始化和清理,可以重复利用

7)memcache删除机制
   a.不主动检测item对象是否过期,而是在get时才会检查item对象是否过期以及是否应该删除(懒惰删除对象机制)
   b.当删除对象是,一般不是反内存空间,而是作为标记删除,将指针放入slot回收插槽,下次分配的时候直接使用
   c.当内存空间满的时候,才会根据LRU算法把最近最少使用的item对象删除


memadmin展示memcache状态
1)memadmin
MemAdmin是一款开源、可视化的Memcached管理与监控工具
2)部署
基于LNMP或者LAMP环境,将软件解压到站点目录即可
1
2
3
4
5
6
7
8
9
10
11
12
13
[iyunv@web01 www]# tar xf memadmin-1.0.12.tar.gz
[iyunv@web01 www]# cd memadmin
[iyunv@web01 memadmin]# ll
总用量 36
drwxrwxrwx. 2 root root 4096 6月  19 2013 apps
-rwxrwxrwx. 1 root root 1214 6月  19 2013 config.php
drwxrwxrwx. 2 root root 4096 6月  19 2013 images
drwxrwxrwx. 6 root root 4096 6月  19 2013 include
-rwxrwxrwx. 1 root root  184 6月  19 2013 index.php
drwxrwxrwx. 2 root root 4096 6月  19 2013 langs
-rwxrwxrwx. 1 root root 1489 6月  19 2013 LICENSE.txt
-rwxrwxrwx. 1 root root 1118 6月  19 2013 README.txt
drwxrwxrwx. 2 root root 4096 6月  19 2013 views



3)登陆、初始账户和密码都为admin
1470722364217000.jpg
4)添加memcache主机 1470722513159578.jpg
5)查看各种memcache统计或者设置信息
1470723768526960.jpg
6)监控命中
1470723858386002.jpg

  监控memcache状态脚本实现
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/bin/sh
#ip=$1
#port=$2
check_mem(){
    printf "set key1 0 0 4\r\ntest\r\n"|nc $1 $2
    if [ `printf "get key1\r\n"|nc $1 $2|wc -l` -gt 1 ];then
       echo "memcache $1 $2 ok..."
       hit=`printf "stats\r\n"|nc $1 $2|awk 'NR==14 {print $3}'`
       miss=`printf "stats\r\n"|nc $1 $2|awk 'NR==15 {print $3}'`
       echo "The hit rate is `echo "${hit} ${miss}"|awk
       '{print $1/($1+$2)*100}'`%"   
    else
       echo "memcache $1 $2 error..."
    fi
}
main(){
     [ $# -ne 2 ]&&echo "USAGE:$0 memcacheip memcacheport"&&exit 1
     check_mem $1 $2
}
main $1 $2
[iyunv@db02 shell]# sh shell_14.sh 10.0.0.105 11211
STORED
memcache 10.0.0.105 11211 ok...
The hit rate is 92.1875%
[iyunv@db02 shell]# sh shell_14.sh 10.0.0.105 11212
memcache 10.0.0.105 11212 error...



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-258057-1-1.html 上篇帖子: memcache的安装和操作使用 下篇帖子: memcached演练(3) 使用apache+搭建双节点tomcat集群 信息
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表