在容量足够的情况下,当然是越大越好,但这样会造成浪费.不考虑这种情况.我们一般的情况是:

  • memcache集群一开始创建会根据存储的数据量与访问量进行容量大小的估算.再算一个20%的冗余.
  • 在网站快速增长的情况下,如果容量不够会带来性能的影响.如何提前感知memcache容量不足的情况,又如何确定要再扩容多少?
  • 另外一开始如果估算得太多了,又如何来缩减这个容量.

思考:

  • 从stats出发,可以通过查看mc的状态,像命中率, evictions 的多少决定了mc的容量是否足够,但是不同的mc的使用,淘汰的策略可能不一样,导致这个方法好像不够有通用性.最关键的问题,如果知道这个集群的容量不够了,又如何来判断应该再扩容多少.
  • 另外mc的扩容其实不是很方便的,内存数据可能需要重做,当然像facebook那是有一整套的mc集群方案了,这里还是只讨论原生的基础上能做的一些事情.
  • 是否有成熟的通用的方案?
  • 涉及的数值有"淘汰率 Cache命中率 命中率日变化 内存使用量",不能单看一个数据,该如何综合考虑.
  • 如果在大访问量的集群里,采用一致性hash,对于mc的扩容与缩减,都是相当恶心的,一般都会采取哪些办法做到最小影响的平滑过渡.

引用:
Scaling Memcache At Facebook
http://www.oschina.net/translate/scaling-memcache-facebook?cmp

最新文章

  1. MySql使用游标Cursor循环(While)更新数据
  2. 【转载】S2SH
  3. Spark小课堂Week2 Hello Streaming
  4. dedecms 首页分页功能
  5. 提升你的Java应用性能:改善数据处理
  6. css:中文词不断开,整体换行
  7. 更新代码和工具,组织起来,提供所有博文(C++,2014.09)
  8. TortoiseGit - 处理冲突
  9. Mysql net start mysql启动,提示发生系统错误 5 拒绝访问,原因所在以及解决办法
  10. OBS源码解析(1)main函数
  11. 【BZOJ1717】产奶的模式(后缀数组)
  12. Python 的第一个小程序
  13. 你真的理解了for循环吗?反正我是没有
  14. 第四周助教工作总结——NWNU李泓毅
  15. matlab练习程序(加权最小二乘)
  16. 火币网API文档——REST 行情、交易API简介
  17. Windows Server 2008服务器上测试几个站点,改完host居然没有生效
  18. lua C++ wrapper
  19. MIT molecular Biology 笔记8 RNA剪接
  20. 【Python爬虫】教务处模拟登陆

热门文章

  1. Oracle数据库分页查询的几种实现方法
  2. [Erlang]Mnesia分布式应用
  3. C++程序员经常问的11个问题
  4. No USB devices or running emulators detected”
  5. Jsp bug_001
  6. asp.net中C#调用存储过程
  7. 部署NetCore项目(本文介绍用用IIS部署)
  8. 各种图示的介绍及绘制(boxplot、stem)
  9. Multi-tasking RTOS for microprocessors with limited memory by saving only a single return address per task during context switching
  10. 国家模式c++