12 Memcached 缓存无底洞现象
2024-10-21 11:38:17
一:Memcached 缓存无底洞现象
(1)facebook的工作人员反应的,facebook在2010年左右,memcached节点就已经达到了3000个,存储的数据进千G的数据存储。
他们发现一个问题,memecached连接频率,效率都下降了,于是加了memcached节点.添加节点后发现因为连接频率导致的问题并没有好转。称之为“无底洞现象”。
问题分析:
以用户为列:user-133-age,usr-133-name,usr-133-height ....共有N个KEY。
当服务器增多,133号的信息也被散落在更多的节点上。所以同样访问个人主页,要得到的个人主页信息,则节点越多,要连接的节点也越多。对于memcached的连接数,并没有随着节点的增多,而降低。导致问题出现...。
事实上:
NoSQL和传统的RDBMS,并不是水火不容,而两者在某些设计上,是可以互相参考的,对于memcached,redis这种key value存储,key的设计可以参考MySql中表/列的设计,比如user表下,有age列,name列,身高列,对应的key,可以用user:1333:age=23,user:133:name='lisi',suer:133:height='168'
问题的解决方案:
把某一组key,按照公同的前缀,来分布,比如 user-133-age,user-133-name,user-133-height这个3个key,在用分布式算法求期节点时,应该可以用user-133来计算而不是以 user-133-nage来计算,这样3个关于个人的信息的key都落到了同一个节点上,点击的访问个人主页的时,值需要连接1个节点。
最新文章
- Qt qml 单例模式
- FP_PR2SAP 除包材、半成品以外的半成品下层物料展望期7天更改为40日
- Mongodb 笔记09 备份、部署MongoDB
- pascal矩阵 分类: 数学 2015-07-31 23:01 3人阅读 评论(0) 收藏
- MySql存储过程—2、第一个MySql存储过程的建立
- iOS 上架提示ipad需要显示四个方位,而我们只能竖屏的时候的解决办法
- 七行代码开始flask
- 深入java虚拟机学习 -- 类的加载机制
- ccd采集
- 死磕 java集合之DelayQueue源码分析
- [物理学与PDEs]第3章第4节 磁流体力学方程组的数学结构
- SQL-17 获取当前(to_date='9999-01-01')薪水第二多的员工的emp_no以及其对应的薪水salary
- C++学习(二十五)(C语言部分)之 结构体2
- 【TensorFlow学习笔记 】name_socpe variable_scope
- 汇编 ADD指令
- jQuery+Ajax+PHP 制作简单的异步数据传输(测试用户名是否可用)
- node入门学习(二)
- js日期格式化 扩展Date()
- 【bzoj1072】SCOI2007排列
- 【Keras案例学习】 sklearn包装器使用示范(mnist_sklearn_wrapper)