Memcached 是一个 高性能的 分布式 内存对象缓存系统,用于动态Web应用降低数据库负载,提升性能。
1.变化频繁,具有不稳定性的数据 (比方用户在线状态、在线人数..) 2.门户站点的新闻等,认为页面静态化仍不能满足要求,能够放入到memcache中. 什么样的数据不适合放入memcached中?
(银行,股票。证券系统.) 过大的数据不能放入到memcache(优酷网.) --我自己的一个小结怎样决定是否使用memcached --假设是一个小站点,pv值不大,就不考虑使用memcache了 --变化频繁,查询频繁,可是不一定写入数据库(适合memcache) --变化频繁, 一变化就要入库[比方股票,金融.](不适合memcache) --变化不频繁,查询频繁,无论如不入库,都比較适合memcache。
当查询数据时,client首先參考节点列表计算出key的哈希值(阶段一哈 希),进而选中一个节点;client将请求发送给选中的节点,然后memcached节点通过一个内部的哈希算法(阶段二哈希),查找真正的数据 (item)。
Client 2使用与Client 1同样的client库(意味着阶段一的哈希算法同样),也拥有同样的memcached列表(A, B, C)。
于是,经过同样的哈希计算(阶段一)。Client 2计算出key “zs”在memcached B上,然后它直接请求memcached B,得到数据”张三”。
详细的分布式策略。由Client实现。也就是说Memcached的分布式,不是系统层的。而是应用层的。详细实现能够參考上面的工作原理。
欢迎大家一起讨论学习!
实用的自己收!
记录与分享,让你我共成长!
欢迎查看我的其它博客。我的博客地址:http://blog.csdn.net/caicongyang
转载于:https://www.cnblogs.com/bhlsheji/p/5229088.html
相关资源:数据结构—成绩单生成器