服务治理怎么做:降级、熔断、全链路压测

开发 前端
在高峰期或者流量激增的情况下,为了防止系统崩溃,可以暂时关闭或降低某些非关键服务的质量。

图片图片

服务降级的常见场景

  1. 系统负载过高:在高峰期或者流量激增的情况下,为了防止系统崩溃,可以暂时关闭或降低某些非关键服务的质量。
  2. 依赖服务故障:当某个依赖服务不可用时,通过服务降级可以提供替代方案或者简化的功能,以确保系统核心功能的正常运作。
  3. 网络问题:在网络延迟或不稳定的情况下,降低某些服务的请求频率或数据量,以减轻系统负担。
  4. 资源不足:当系统资源(如 CPU、内存)不足时,通过服务降级减少资源消耗。

服务降级的策略

  1. 功能降级:暂时关闭或简化某些非关键功能。例如,关闭推荐系统、日志记录等不影响核心功能的服务。
  2. 数据降级:降低数据返回的粒度或数量。例如,从详细数据切换为概要数据。
  3. 延迟处理:将非紧急的任务延迟处理或批量处理。例如,将某些后台任务延迟执行,减轻当前系统负担。
  4. 限流:限制部分用户的访问,优先保证核心用户或付费用户的服务质量。

实施服务降级的技术手段

  1. 熔断器模式(Circuit Breaker Pattern):当检测到某个服务不可用时,主动切断对该服务的调用,避免影响其他服务。
  2. 限流器(Rate Limiter):限制单位时间内的请求数量,防止系统过载。
  3. 降级开关:通过配置中心动态调整服务降级策略,灵活应对不同场景。
  4. 缓存:使用缓存减轻数据库或其他后端服务的压力,提供快速响应。

图片图片

图片图片

图片图片

图片图片

图片图片

图片图片

图片图片

图片图片

图片图片

图片图片

图片图片

图片图片

图片图片

图片图片

工作流程

请求通过熔断器

  • 每个请求通过熔断器进行计数,监控其成功或失败状态。
  • 如果请求成功,计数器重置。
  • 如果请求失败,计数器记录失败。

监控和评估

  • Hystrix 会监控一段时间内(例如 10 秒)的请求数量和失败率。

  • 如果在这段时间内请求数量超过设定的最小请求数,并且失败率超过设定的阈值,熔断器将跳到打开状态。

短路请求

  • 在打开状态下,所有请求都会被短路,不会真正调用下游服务,而是立即返回一个预设的降级响应。

  • 这样可以防止下游服务的故障影响到整个系统,并减轻下游服务的负载。

尝试恢复

  • 在打开状态持续一段时间后,熔断器进入半开状态,允许少量请求通过。

  • 如果这些请求成功,熔断器将关闭,恢复正常请求。

  • 如果这些请求失败,熔断器将重新打开,并继续短路请求。

服务灰度发布设计与实践服务灰度发布设计与实践

图片图片

优点:

  • 降低风险:通过逐步发布新版本,团队可以在小范围内验证新功能的有效性,降低全量发布带来的风险。
  • 快速反馈:在发布过程中,可以迅速收集用户反馈和监控数据,及时发现和解决问题。
  • 持续交付:灰度发布与持续交付和持续部署实践相结合,可以实现快速、频繁和稳定的发布。
  • 平滑过渡:避免了大规模发布带来的潜在问题,确保系统平稳运行。

服务灰度发布的工具

  1. 服务网关:如 NGINX、Kong 等,可以配置流量路由规则,实现灰度发布。
  2. 容器编排:如 Kubernetes,可以通过配置滚动更新和分阶段发布策略实现灰度发布。
  3. 服务网格:如 Istio、Linkerd,可以细粒度地控制服务间的流量,实现灰度发布。

图片图片

图片图片

图片图片

图片图片

图片图片

图片图片

图片图片

服务全链路压测设计

图片图片

图片图片

图片图片

图片图片

图片图片

图片图片

图片图片

图片图片

责任编辑:武晓燕 来源: 二进制跳动
相关推荐

2022-06-27 11:06:33

全链路影子库影子表

2022-06-16 10:48:07

系统压测数据

2017-10-31 09:43:31

2022-12-26 11:57:41

数据库治理

2016-11-09 18:07:00

京东

2021-10-06 19:01:45

高并发熔断预热

2018-01-31 09:34:25

互联网电商全链路

2021-09-02 10:30:51

mPaaS 全链路压力测试

2018-01-10 14:08:34

阿里双11压测

2017-11-16 15:45:25

服务降级熔断

2023-07-20 15:46:24

2023-01-30 22:34:44

Node.js前端

2024-01-05 00:29:36

全链路灰度发布云原生

2019-03-20 16:48:07

交通运输新交通京东云

2024-01-30 18:10:25

2013-03-26 10:48:22

创业降级论

2011-06-01 17:58:14

网站外链

2018-07-12 09:59:39

microServicmockautoTest
点赞
收藏

51CTO技术栈公众号