`
mowengaobo
  • 浏览: 164157 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

关于memcached分布式拓扑结构的可靠性

 
阅读更多

memcached依赖客户端的散列实现了“分布式',但是由于缺少结点间的复制(replication)功能,memcached的"单一节点"的可 靠性是没有保证的。对比ehcache的Terracotta Server Array拓扑结构(参考:http://blog.csdn.net/bluishglc/article/details/6889928)我们就会 发现,Terracotta Server Array在实现了以mirror group为单位的分布式拓扑结构的基础之上,在每个mirro group内的结点之间又实现了结点间的复制(replication),从而确保了“单一结点”(即mirror group)的可靠性。为了能实现memcached的结点间复制,也出现了一些针对memcached的第三方复制工具,其中比较知名的是 repcached:http://repcached.lab.klab.org/ ,但是该项目的活跃度并不高,目前最新的版本是2009年5月发布的,只能支持memcached 1.2.x.

但是从另一个方面来 看,对于分布式“缓存”来说,单一结点的可靠性似乎不是”那么的重要“,原因在于,缓存中的数据都是来自原始数据(如数据库)的拷贝,缓存当机不会导致数 据的丢失,另一方面,一个结点失效后,数据可以散列到其他结点上(这完全有赖于一致性哈希算法Consistent Hashing尽可能小地去改变已存在数据与结点的映射关系),因此对memcached这类分布式缓存,虽然其单一结点可靠性没有保证,但是其拓扑能从 整体上保证缓存的可靠性。

分享到:
评论

相关推荐

    memcached分布式缓存数据库部署.doc

    memcached的分布式特性使其能够在多台服务器上分布缓存,通过一致性哈希算法实现数据的均匀分布,当集群中的某个节点出现问题时,可以通过其他节点继续提供服务,保证系统的高可用性。此外,memcached支持多种数据...

    memcached分布式工具

    Memcached的分布式特性使得它可以跨越多个服务器节点,实现数据的分散存储,从而提高了系统的可扩展性和可用性。在集群部署中,每个服务器都可以作为一个独立的memcached实例,共同处理请求。 部署memcached分布式...

    Memcached分布式缓存入门

    2. **分布式策略**:通过一致性哈希或其他算法实现数据在多台Memcached服务器间的均匀分布。 3. **性能监控**:定期检查Memcached的命中率、内存使用情况等指标,及时调整策略。 **六、Memcached与数据库的协同...

    Memcached分布式缓存学习.doc

    Memcached 分布式缓存学习 Memcached 是一个高性能的分布式内存对象缓存系统,用于动态 Web 应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度。 ...

    JAVA 客户端调用 memcached分布式的高速缓存系统

    JAVA 客户端调用 memcached分布式的高速缓存系统

    Memcached分布式缓存简介

    Memcached是一种高性能的分布式内存对象缓存系统,主要用于动态Web应用程序,以缓解数据库负载。它通过将数据和对象存储在内存中,减少对数据库的直接访问,从而提高动态、数据库驱动网站的速度。对于.NET开发者来说...

    Memcached 分布式缓存实现原理简介

    总结来说,Memcached的分布式缓存实现主要依赖于客户端的哈希算法,包括余数计算分散法和一致性哈希。这些策略确保了数据在多台服务器间的有效分布,减少了数据库的压力,提高了系统的响应速度和可扩展性。在实际...

    .net memcached 分布式缓存应用类库

    1. **分布式**: Memcached将数据分散存储在多台服务器上,通过一致性哈希算法实现数据的分布式存储,确保数据的正确分布和负载均衡。 2. **内存存储**: 由于Memcached主要利用内存进行数据存储,因此其读取速度极快...

    Memcached分布式缓存系统的应用.pdf

    Memcached的高效内存管理机制保证了缓存数据的快速读写,而且其分布式缓存的实现机制确保了良好的可扩展性和容错能力。 ### 总结 Memcached的引入为动态Web应用提供了一种高效的缓存解决方案,有效缓解了数据库的...

    memcached 分布式缓存服务器

    3. **分布式**:通过哈希算法将键分发到集群中的不同节点,实现数据的分布式存储,提供扩展性和高可用性。 4. **LRU(Least Recently Used)策略**:当内存满时,memcached 采用 LRU 策略淘汰最近最少使用的数据。 ...

    dot net memcached 分布式缓存应用类库

    综上所述,"dot net memcached 分布式缓存应用类库"是一份针对.NET开发者的重要资源,涵盖了Memcached在C#和ASP.NET环境中的应用,可以帮助开发者掌握分布式缓存技术,提高Web应用的性能和可扩展性。通过学习和实践...

    Memcached分布式缓存

    - **Cache::Memcached的分布式方法**:通常通过哈希算法(如一致性哈希)来确定键值对应该存储在哪台服务器上。 **4.2 Cache::Memcached的分布式方法** - **根据余数计算分散**:将键值对哈希后取模得到余数,再...

    20120102 net下memcached 分布式缓存系统应用

    7. **故障转移与分布式一致性**:如何处理节点故障,以及Memcached的分布式一致性哈希算法。 8. **性能优化**:缓存命中率提升技巧,避免缓存击穿、雪崩等问题的方法。 9. **源码分析**:如果包含源码,可能涉及具体...

    _net memcached 分布式缓存应用类库

    1. **Memcached介绍**:Memcached是一种高性能的分布式内存对象缓存系统,用于临时存储(缓存)中间结果或常用数据,以减少对数据库的访问。 2. **C#与.NET**:了解C#语言基础和.NET框架,特别是.NET Core或.NET ...

    Memcached 分布式缓存实现原理 – 码农网1

    Memcached 是一款高性能的分布式内存缓存系统,常用于缓解数据库负载,提高Web应用的响应速度和可扩展性。它的设计目标是简单且高效,通过将数据存储在内存中,避免了磁盘I/O带来的延迟,从而实现了快速的数据访问。...

    memcached 分布式缓存服务

    Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的...

    memcached 分布式内存

    - **分布式**: 通过哈希算法,Memcached 可以将数据分发到多台服务器上,实现数据的分布式存储,提高了服务的可扩展性。 2. **优势** - **高性能**: 由于数据存储在内存中,读取速度极快,极大地提升了服务响应...

    memcached (分布式存储)

    memcached 大家相互学习, ---

    memcached全面剖析–4. memcached的分布式算法.txt

    memcached全面剖析–4. memcached的分布式算法.txt

    采用Memcached实现分布式Session所需的jar包

    - 高可用性:Memcached的分布式特性允许多台服务器共同承担Session存储,即使单个服务器故障,也不会丢失全部Session。 - 性能提升:Memcached内存存储机制,读取速度远快于硬盘,减少了对数据库的依赖,提升了...

Global site tag (gtag.js) - Google Analytics