b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

一致性哈希算法_redis一致性哈希算法_apache一致性哈希第三(3)

电脑杂谈  发布时间:2017-02-06 13:16:19  来源:网络整理

这样,我们的架构模式变成一个Redis节点切片包含一个主Redis和一个备Redis。在主Redis宕机时,备Redis接管过来,上升为主Redis,继续提供服务。redis一致性哈希算法主备共同组成一个Redis节点,通过自动故障转移,保证了节点的高可用性。则Sharding架构演变成:

vc+1zbO1xLjfv8nTw9DUoaM8L3A+DQo8cD6437fDzsrBv8/Co6y8tMq5ssnTw1NoYXJkaW5nt9bGrKOs0ru49rWltsC92rXju7nKx7PQtaPBy7rctPO1xLfDzsrRucGmo6zV4sqxztLDx7u50OjSqr340ruyvbfWveKho82os6PH6b/2z8KjrNOm08O3w87KUmVkaXO2wbLZ1/fBv7rN0LSy2df3wb+y7tLsuty086OstsGzo7OjysfQtLXEyv2xtqOs1eLKsc7Sw8e/ydLUvau2wdC0t9bA66OstvjH0rbBzOG5qbj8tuC1xMq1wP3K/aGjPGJyIC8+DQq/ydLUwPvTw9b3tNPEo8q9yrXP1rbB0LS31sDro6zW97i61PDQtKOstNO4utTw1ru2waOszazKsdK71ve50rbguPa006Gj1NpTZW50aW5lbLzgv9jPwqOsu7m/ydLUsaPVz73ateO5ytXPtcTX1LavvOCy4qGjPC9wPg0KPGgzIGlkPQ=="3利用代理中间件实现redis集群">3.利用代理中间件实现Redis集群

上面分别介绍了多Redis服务器集群的两种方式,它们是基于客户端sharding的Redis Sharding和基于服务端sharding的Redis Cluster。

客户端sharding技术其优势在于服务端的Redis实例彼此独立,相互无关联,每个Redis实例像单服务器一样运行,非常容易线性扩展,系统的灵活性很强。其不足之处在于:

由于sharding处理放到客户端,规模进步扩大时给运维带来挑战。 服务端Redis实例群拓扑结构有变化时,每个客户端都需要更新调整。连接不能共享,当应用规模增大时,资源浪费制约优化。

服务端sharding的Redis Cluster其优势在于服务端Redis集群拓扑结构变化时,客户端不需要感知,客户端像使用单Redis服务器一样使用Redis集群,运维管理也比较方便。

不过Redis Cluster正式版推出时间不长,系统稳定性、性能等都需要时间检验,尤其在使用场合。

能不能结合二者优势?即能使服务端各实例彼此独立,支持线性可伸缩,同时sharding又能集中处理,方便统一管理?本篇介绍的Redis代理中间件twemproxy就是这样一种利用中间件做sharding的技术。

twemproxy处于客户端和服务器的中间,将客户端发来的请求,进行一定的处理后(如sharding),再转发给后端真正的Redis服务器。也就是说,客户端不直接访问Redis服务器,而是通过twemproxy代理中间件间接访问。

参照Redis Sharding架构,增加代理中间件的Redis集群架构如下:

twemproxy中间件的内部处理是无状态的,它本身可以很轻松地集群,这样可避免单点压力或故障。

twemproxy后端不仅支持redis,同时也支持memcached,这是twitter系统具体环境造成的。

由于使用了中间件,twemproxy可以通过共享与后端系统的连接,降低客户端直接连接后端服务器的连接数量。同时,它也提供sharding功能,支持后端服务器集群水平扩展。统一运维管理也带来了方便。

当然,也是由于使用了中间件代理,相比客户端直连服务器方式,性能上会有所损耗,实测结果大约降低了20%左右。


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-30885-3.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...