1 服务雪崩
现象:在一个时刻微服务系统中所有微服务均不可用的这种现象称为服务雪崩
引发:在调用链路中某个服务执行时间过长,导致自生服务不可用,并把这种情况扩大
2解决微服务系统雪崩问题
a服务熔断(熔断本是一种开关装置,当某个服务单元发生故障后,通过断路器故障监控某个异常条件被触发,直接熔断整个服务,
向调用方返回一个符合预期的,可处理的备选响应,而不是长时间等待或抛出无法处理的异常,
保证服务调用方线程不会长时间占用,避免故障在分布式系统中蔓延乃至雪崩,如果目标服务情况好转,则恢复调用)
作用:就是在微服务系统中防止服务雪崩现象出现
熔断机制:所有微服务中必须引入hystrix组件,一旦引入hystrix这个组件就具有服务熔断功能
3服务降级
服务压力剧增的时候,根据当前业务情况及流量对一些服务和页面有策略的降级,以此幻剑服务器的压力,以保证 核心任务进行,
同时保证部分甚至大部分任务客户能得到正确的响应。也就是当前的请求处理不了了,给一个默认的返回。
通俗定义:当网站服务流量突然增加时,为了保证系统核心服务正常运行,有策略关系系统中边缘服务,以保证核心服务正常运行
共同点:都是从可用性着想,为防止系统整体缓慢甚至崩溃,熔断一般是服务基于策略的自动触发,降级虽说可人工干预,但在微服务
架构下完全人工先然不可能,开关预置配置中心都是必要手段,如sentinel
异同点:出发原因不太一样,服务熔断一般是某个服务(下游服务)故障引起,尔降级一般是从整体负荷考虑;
管理目标的层次不太一样,熔断其实是一个框架级的处理,每个微服务都需要(无层级之分),而降级一般需要对业务有层级
之分(比如降级一般是从最外围服务边缘服务开始)
总结:熔断必会触发降级,所以熔断也是降级的一种,区别在于熔断是对调用链路的保护,而降级是对系统过载的一种保护处理
还没有评论,来说两句吧...