微服务篇之雪崩、降级和熔断

一、服务雪崩

**服务雪崩:**一个服务失败,导致整条链路的服务都失败的情形。

二、服务降级

服务降级是服务自我保护的一种方式,或者保护下游服务的一种方式,用于确保服务不会受请求突增影响变得不可用,确保服务不会崩溃。

三、服务熔断

Hystrix 熔断机制,用于监控微服务调用情况, 默认是关闭的,如果需要开启需要在引导类上添加注解:@EnableCircuitBreaker 如果检测到 10 秒内请求的失败率超过 50% ,就触发熔断机制。之后每隔 5 秒重新尝试请求微服务,如果微服务不能响应,继续走熔断机制。如果微服务可达,则关闭熔断机制,恢复正常请求。

四、面试题

**面试官:**什么是服务雪崩,怎么解决这个问题?

候选人:

服务雪崩是指一个服务失败,导致整条链路的服务都失败的情形,一般我们在项目解决的话就是两种方案,第一个是服务降级,第二个是服务熔断,如果流量太大的话,可以考虑限流。

服务降级:服务自我保护的一种方式,或者保护下游服务的一种方式,用于确保服务不会受请求突增影响变得不可用,确保服务不会崩溃,一般在实际开发中与feign接口整合,编写降级逻辑。

服务熔断:默认关闭,需要手动打开,如果检测到 10 秒内请求的失败率超过 50%,就触发熔断机制。之后每隔 5 秒重新尝试请求微服务,如果微服务不能响应,继续走熔断机制。如果微服务可达,则关闭熔断机制,恢复正常请求。

相关推荐
饕餮争锋1 分钟前
Spring内置的Bean作用域介绍
java·后端·spring
却话巴山夜雨时i1 分钟前
394. 字符串解码【中等】
java·数据结构·算法·leetcode
豆苗学前端19 分钟前
面试复盘:谈谈你对 原型、原型链、构造函数、实例、继承的理解
前端·javascript·面试
张人大 Renda Zhang24 分钟前
Java 虚拟线程 Virtual Thread:让“每请求一线程”在高并发时代复活
java·jvm·后端·spring·架构·web·虚拟线程
一勺菠萝丶32 分钟前
解决 SLF4J 警告问题 - 完整指南
java·spring boot·后端
济南壹软网络科技有限公司35 分钟前
架构深潜:通霸IM——私有化部署、全链路开源的高可用企业级即时通讯技术基座
java·架构·开源·即时通讯源码·即时通讯im
小股虫37 分钟前
手搓限流第二版:限流算法与动态阈值的深度整合
java
TracyCoder12340 分钟前
大白话讲Java NIO
java·开发语言·nio
魂梦翩跹如雨1 小时前
P8615 [蓝桥杯 2014 国 C] 拼接平方数——Java解答
java·c语言·蓝桥杯
齐生11 小时前
iOS 知识点 - Category / Extension / Protocol 小合集
笔记·面试