Tair分布式缓存
Tair是为了解决什么问题而生? Redis很好用,相比memcached多了很多数据结构,支持持久化。但是在很长一段时间里,原生是不支持分布式的。后来就出现了很多redis集群类产品,Tair是其中胜出的优秀作品之一。 所以Tair的特性都是一些集群的特性,比如:容错、解决单点故障、跨机房管理、多集群管理、支持副本等。总而言之,是redis的高可用版本。 Tair的架构 Tair的整体风格是简约实用,包括三个必选模块:client、configserver和dataserver。一个可选模块:invalidserver。 还有一个必要软设施:一致性哈希算法提供分布式的负载均衡计算。 client的作用 1. 在应用端提供访问Tair集群的接口 2.更新并缓存数据分布表和invalidserver 地址等 3. 本地缓存,避免过热数据访问影响Tair集群服务 4. 流控 dataserver的作用 1. 提供存储引擎 2. 接受client和put、get、remove等操作 3. 执行数据迁移、复制等 4. 插件:在接受请求的时候处理一些自定义功能 5. 访问统计 invallidserver的作用 1. 接收来自client和invalid、hide等请求后,对属于同一组的集群(双机房独立集群部署方法)做delete、hide操作,保证同一组集群的一致 2