分布式面试之Solr以及redis的面试问题-创新互联

分布式面试之Solr以及redis的面试问题

创新互联一直通过网站建设和网站营销帮助企业获得更多客户资源。 以"深度挖掘,量身打造,注重实效"的一站式服务,以成都网站制作、成都网站设计、移动互联产品、全网整合营销推广服务为核心业务。10多年网站制作的经验,使用新网站建设技术,全新开发出的标准网站,不但价格便宜而且实用、灵活,特别适合中小公司网站制作。网站管理系统简单易用,维护方便,您可以完全操作网站资料,是中小公司快速网站建设的选择。

           

redis之雪崩问题的解决:首先redis做缓存,应用场景一般如下:

分布式面试之Solr以及redis的面试问题

Redis做缓存是最常见的应用场景。客户端请求在缓存层命中就直接返回,如果miss就去读取存储层,存储层读取到就写入缓存层,然后再返回到客户端。 
优点: 
加速读写 
降低后端负载 
缺点: 
数据的不一致性 
代码维护成本 
运维成本

缓存穿透化:

分布式面试之Solr以及redis的面试问题

然而缓存可能会遇到这种问题:请求cache拿不到数据,就会去存储层拿,都拿不到时,返回空值(可能会返回大量空值)。或者代码有问题,拿不到数据。就会一直请求数据。导致后端打崩。

优化方法:
1、缓存层缓存空值。
–缓存太多空值,占用更多空间。(优化:给个空值过期时间)
–存储层更新代码了,缓存层还是空值。(优化:后台设置时主动删除空值,并缓存把值进去)

redis:雪崩优化

分布式面试之Solr以及redis的面试问题

redis挂了,客户端直接请求到数据库里面。数据库负载非常高。甚至数据库拖挂了。

优化方法:
1、保持缓存层服务器的高可用。
–监控、集群、哨兵。当一个集群里面有一台服务器有问题,让哨兵踢出去。
2、依赖隔离组件为后端限流并降级。
比如推荐服务中,如果个性化推荐服务不可用,可以降级为热点数据。
3、提前演练。
演练 缓存层crash后,应用以及后端的负载情况以及可能出现的问题。
对此做一些预案设定。

redis:弱点key优化

分布式面试之Solr以及redis的面试问题

A、B、C、D同时请求一个资源,不存在时都要去请求存储层,有可能会拖挂。

优化方法: 
1、互斥锁: 
只允许一个请求重建缓存。 
其他请求等待缓存重建执行完,重新从缓存获取数据即可。

分布式面试之Solr以及redis的面试问题

2、用户过期 
–“物理”不过期 
–逻辑设置过期时间(根据上一次更新时间,构建一个队列,主动去更新) 
热点key重建优化

分布式面试之Solr以及redis的面试问题

创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。


网站名称:分布式面试之Solr以及redis的面试问题-创新互联
转载源于:http://azwzsj.com/article/dpcsco.html