分布式集群时代

2019-06-06  本文已影响0人  Quillagua

分布式集群时代

当缓存数据量不断增加时,单机内存不够使用,需要把数据切分不同部分,分布到多台服务器上。
可在客户端对数据进行分片,数据分片算法详见C#一致性Hash详解、C#之虚拟桶分片。

逻辑图:


这里写图片描述

大规模分布式集群时代
当数据量持续增加时,应用可根据不同场景下的业务申请对应的分布式集群。 这块最关键的是缓存治理这块,其中最重要的部分是加入了代理服务。 应用通过代理访问真实的Redis服务器进行读写,这样做的好处是:

避免越来越多的客户端直接访问Redis服务器难以管理,而造成风险。
在代理这一层可以做对应的安全措施,比如限流、授权、分片。
避免客户端越来越多的逻辑代码,不但臃肿升级还比较麻烦。
代理这层无状态的,可任意扩展节点,对于客户端来说,访问代理跟访问单机Redis一样。
目前楼主公司使用的是客户端组件和代理两种方案并存,因为通过代理会影响一定的性能。 代理这块对应的方案实现有Twitter的Twemproxy和豌豆荚的codis。

逻辑图:


这里写图片描述
上一篇下一篇

猜你喜欢

热点阅读