当前位置:首页 > 科技  > 软件

解密微服务雪崩:保护您的应用免受灾难性故障的威胁

来源: 责编: 时间:2023-10-06 19:19:56 421观看
导读今日目标了解雪崩产生的原因理解常见解决方案随着微服务架构的广泛应用,应用程序的复杂性已经得到了显著提高,但与之同时,微服务雪崩问题也开始引起广泛关注。微服务雪崩是指在微服务架构中,一个或多个微服务出现故障或不

今日目标

  • 了解雪崩产生的原因
  • 理解常见解决方案

随着微服务架构的广泛应用,应用程序的复杂性已经得到了显著提高,但与之同时,微服务雪崩问题也开始引起广泛关注。微服务雪崩是指在微服务架构中,一个或多个微服务出现故障或不可用时,导致整个系统的不稳定甚至崩溃。本文将介绍微服务雪崩的产生原因以及一些常见的解决方案。8CX28资讯网——每日最新资讯28at.com

1. 雪崩介绍

微服务中,服务间调用关系错综复杂,一个微服务往往依赖于多个其它微服务。8CX28资讯网——每日最新资讯28at.com

图片图片8CX28资讯网——每日最新资讯28at.com

如图,如果服务提供者I发生了故障,当前的应用的部分业务因为依赖于服务I,因此也会被阻塞。此时,其它不依赖于服务I的业务似乎不受影响。8CX28资讯网——每日最新资讯28at.com

图片图片8CX28资讯网——每日最新资讯28at.com

但是,依赖服务I的业务请求被阻塞,用户不会得到响应,服务器的这个线程不会释放,于是越来越多的用户请求到来,越来越多的线程会阻塞:8CX28资讯网——每日最新资讯28at.com

图片图片8CX28资讯网——每日最新资讯28at.com

服务器支持的线程和并发数有限,请求一直阻塞,会导致服务器资源耗尽,从而导致所有其它服务都不可用,那么当前服务也就不可用了。8CX28资讯网——每日最新资讯28at.com

那么,依赖于当前服务的其它服务随着时间的推移,最终也都会变的不可用,形成级联失败,雪崩就发生了:8CX28资讯网——每日最新资讯28at.com

图片图片8CX28资讯网——每日最新资讯28at.com

总结雪崩产生原因

  • 依赖关系复杂性: 在微服务架构中,各个服务之间存在复杂的依赖关系。如果一个服务出现故障,它可能会导致依赖于它的其他服务也无法正常工作。
  • 大规模部署: 大规模部署意味着有大量的服务实例在运行,当其中一部分实例出现问题时,整个系统可能受到影响。
  • 同时故障: 有时,多个服务可能因相同的原因(如硬件故障、网络问题或配置错误)而同时故障,导致雪崩效应。
  • 超时和重试: 如果某个服务在请求时长时间未响应,其他服务可能会发起重试请求,导致更多的负载,最终导致系统崩溃。
  • 资源耗尽: 当某个服务的资源(如数据库连接、线程池)被过度消耗时,它可能会无法响应请求,从而引发雪崩。

2. 雪崩解决方案

雪崩解决常见解决方案有以下几种:8CX28资讯网——每日最新资讯28at.com

  • 超时处理:对于每个微服务的请求,应该设置合理的超时时间。超时时间应该充分考虑服务的响应时间和业务需求,以避免等待时间过长导致的问题
  • 舱壁模式(Bulkhead Pattern for Avalanche):系统遇到雪崩风险时,通过隔离不同服务或组件,以防止一个故障或高负载情况影响整个系统的稳定性。是一种应对潜在雪崩的设计模式
  • 限流(Rate Limiting): 限流可以控制对服务的请求速率,确保不会超出服务的处理能力。这可以防止流量过多而导致系统崩溃
  • 熔断器模式(Circuit Breaker Pattern):熔断器模式是一种容错模式,用于避免雪崩效应。熔断器会监控服务的健康状态,当服务连续出现故障或响应时间超过阈值时,熔断器会打开,阻止进一步的请求流量流向该服务,从而保护系统的稳定性
  • 降级策略(Fallback): 降级是一种处理服务不可用或性能下降的策略,它允许系统在出现问题时提供有限但稳定的功能,而不是完全失败。当服务出现问题时,降级策略可以返回默认值、缓存数据、执行备用操作或者提供一个基本的响应,以确保用户仍然能够访问系统的一部分功能

2.1. 超时处理

针对服务调用增加超时机制(一般dubbo默认30s),一旦超时自动释放资源,因释放资源较快一定程度可抑制资源耗尽问题。但如果在超时释放的时间内陡增大量请求,依然会导致服务宕机不可用。8CX28资讯网——每日最新资讯28at.com

图片图片8CX28资讯网——每日最新资讯28at.com

2.3. 熔断器模式(Circuit Breaker Pattern)

熔断器模式:由熔断器统计业务执行的异常比例,如果超出阈值则会熔断该业务,拦截访问该业务的一切请求。8CX28资讯网——每日最新资讯28at.com

熔断器会统计访问某个服务的请求数量,异常比例8CX28资讯网——每日最新资讯28at.com

图片图片8CX28资讯网——每日最新资讯28at.com

当发现访问服务D的请求异常比例过高时,认为服务D有导致雪崩的风险,会拦截访问服务D的一切请求,形成熔断:8CX28资讯网——每日最新资讯28at.com

图片图片8CX28资讯网——每日最新资讯28at.com

2.4. 限流

限流:限制业务访问的QPS,避免服务因流量的突增而故障。8CX28资讯网——每日最新资讯28at.com

图片图片8CX28资讯网——每日最新资讯28at.com

3.总结

雪崩问题:8CX28资讯网——每日最新资讯28at.com

  • 微服务之间相互调用,因为调用链中的一个服务故障,引起整个链路都无法访问的情况。

解决方案:8CX28资讯网——每日最新资讯28at.com

限流是对服务的保护,避免因瞬间高并发流量而导致服务故障,进而避免雪崩。是一种预防措施。8CX28资讯网——每日最新资讯28at.com

超时处理、线程隔离、降级熔断是在部分服务故障时,将故障控制在一定范围,避免雪崩。是一种补救措施。8CX28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-12139-0.html解密微服务雪崩:保护您的应用免受灾难性故障的威胁

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 十个事半功倍的IntelliJ Idea插件和主题

下一篇: WPF中静态资源和动态资源区别?

标签:
  • 热门焦点
  • 7月安卓手机好评榜:三星S23Ultra好评率第一

    性能榜和性价比榜之后,我们来看最后的安卓手机好评榜,数据来源安兔兔评测,收集时间2023年7月1日至7月31日,仅限国内市场。第一名:三星Galaxy S23 Ultra好评率:95.71%在即将迎来新
  • 6月安卓手机性能榜:vivo/iQOO霸占旗舰排行榜前三

    2023年上半年已经正式过去了,我们也迎来了安兔兔V10版本,在新的骁龙8Gen3和天玑9300发布之前,性能榜的榜单大体会以骁龙8Gen2和天玑9200+为主,至于那颗3.36GHz的骁龙8Gen2领先
  • 摸鱼心法第一章——和配置文件说拜拜

    为了能摸鱼我们团队做了容器化,但是带来的问题是服务配置文件很麻烦,然后大家在群里进行了“亲切友好”的沟通图片图片图片图片对比就对比,简单对比下独立配置中心和k8s作为配
  • CSS单标签实现转转logo

    转转品牌升级后更新了全新的Logo,今天我们用纯CSS来实现转转的新Logo,为了有一定的挑战性,这里我们只使用一个标签实现,将最大化的使用CSS能力完成Logo的绘制与动画效果。新logo
  • Automa-通过连接块来自动化你的浏览器

    1、前言通过浏览器插件可实现自动化脚本的录制与编写,具有代表性的工具就是:Selenium IDE、Katalon Recorder,对于简单的业务来说可快速实现自动化的上手工作。Selenium IDEKat
  • 之家push系统迭代之路

    前言在这个信息爆炸的互联网时代,能够及时准确获取信息是当今社会要解决的关键问题之一。随着之家用户体量和内容规模的不断增大,传统的靠"主动拉"获取信息的方式已不能满足用
  • 签约井川里予、何丹彤,单视频点赞近千万,MCN黑马永恒文希快速崛起!

    来源:视听观察永恒文希传媒作为一家MCN公司,说起它的名字来,可能大家会觉得有点儿陌生,但是说出来下面一串的名字之后,或许大家就会感到震惊,原来这么多网红,都签约这家公司了。根
  • 华为开发者大会2023日程公开:开设鸿蒙HarmonyOS 4体验区

    IT之家 7 月 31 日消息,华为今日公布了 HDC.Together 开发者大会 2023 的详细日程。整场大会将于 8 月 4 日-6 日之间举行,届时将发布最新一代鸿蒙 H
  • 三星显示已开始为AR设备研发硅基LED微显示屏

    7月18日消息,据外媒报道,随着苹果首款头显产品Vision Pro在6月份正式推出,AR/VR/MR等头显产品也就将成为各大公司下一个重要的竞争领域,对显示屏这一关
Top