- N +

茶杯犬多少钱一只,易读-ope体育APP_ope sports滚球

原标题:茶杯犬多少钱一只,易读-ope体育APP_ope sports滚球

导读:

在分布式架构环境下,服务间的依赖日益复杂,可能没有人能说清单个故障对整个系统的影响,构建一个高可用的分布式系统面临着很大挑战。...

文章目录 [+]

在分布式架构环境下,服务间的依靠日益杂乱,或许没有人能说清单个毛病对刺死辱母者案后续整个体系的影响,构建一个高可用的分布式体系面临着很大应战。在可控规模或环境下,运用 ChaosBlade 东西,对体系注入各种毛病,持续提高分布式体系的容错和弹性才能,天龙八部之晟皇子以构建高可用的分布式体系。

ChaosBlade 是什么?

ChaosBlade 是一款遵从混沌工程试验原理,建立在阿里巴巴近十年毛病测试和演练实践根底上,并结合了集团各事务的最佳构思和实践,供给丰厚毛病场景完成,协助分布式体系提高容错性和可恢复性的混沌工程东西。点击这儿,了解概况。

ChaosBlade 无需编译,下载解压即可运用,支撑根底资源、Java 运用、容器服务类的混沌试验,特点是操作简练、无侵入、扩展性强。

C闵夏莉haosBlade @GitHub,点击进入

https://github.com/chaosblade-io/chaosblade

下面咱们以微服务分布式体系举例,一步一步构建高可用的分布式体系。

构建高可用的分布式茶杯犬多少钱一只,易读-ope体育APP_ope sports滚球体系

ChaosBlade 的运用办法

ChaoBlade 经过 CL女性自I 办法调用,比方咱们模仿 A 服务调用 B 供给的 com.alibaba.demo.HelloService 服务下的茶杯犬多少钱一只,易读-ope体育APP_ope sports滚球 hello 服务推迟 3 秒,咱们可不戴套以在 B 运用上注入推迟毛病,仅需两步操作:

第一步:预备阶段。因为 Java 运用的毛病注入是经过 Java Agent 机制完成,所以首先要先挂载 agent,履行的指令是 blade prepare jvm --process

第二步:履行阶段,注入毛病。履行指令青青草在线Vip是 blade create dubbo delay --tiskrrrme 3000 --service com.alibaba.demo.H茶杯犬多少钱一只,易读-ope体育APP_ope sports滚球elloService --methodname hello --provider,即对 B 服务供给方供给的 com.alibaba.demo.HelloService#hello 服务注入 3 秒推迟。

ChaosBlade 运用简练,假如想了解指令的怎么运用,可在指令后边添加 -h 参数,比方 blade create dubbo delay -h。更具体的 chaosblade 操作,可详见新手攻略

https://github.com/chaosblade-io/chaosbladevyprvpn下载/wiki/%E6%96%B0%E6%89%8B%E6%8C%87%E5%8D%97

分布式体系高可用准则

高可用的分布式体系一般需求满意以下准则:

  • 失利重试
  • 实例阻隔
  • 恳求限流
  • 服务降级
  • 服务熔断
  • 流量调度
  • 开关&预案
  • 监控告警
  • 日志盯梢

混沌试验场景实践

咱们以 吸血殿下别惹我A 调用 B,B 调用 C,A 一起永久精魄也调用 D 举例,A1、A2 是 A 服务的多个实例,顺次类推。

失利重试

试验场景:调用下流服务实例反常。

容错计划:会再次恳求别的一个服务实例进行重试。

场景催眠凶恶漫画模仿:对 B1 注入反常毛病,A 服务调用到 B1 时会呈现调用失利。

预期计划:体系会将 A 服务的恳求路由到 B2 进行重试。

blade 指令:blade c dubbo throwCustomException --exception --service --provider

修正计划:添加失利检测和恳求重试才能。

实例阻隔

演练场景:屡次调用下流一个服务实例超时。

容错计划:会阻隔或许下线此服务实例,避免恳求路由到此服务实例。

场景模仿:对 B1 注入推迟毛病,A 服务调用到 B1 时,呈现调用超时。

预期计划:体系会主动阻隔或下线 B1 实例。

blade 指令:blade c dubbo d家有二萌宝江少请深爱elay --time --service --provider

修正计划:添加服务质量检查,下线不行用的服务实例。

恳求限流

演练场景:服务线程池满。

容错计划:会对进口流量进行限流,避免恳求堆积,资源耗尽导致服务不行用。

场景模仿:对 A 注入线程池满毛病。

预期计划:线程池满时,触发限流,新恳求快速失利。

blade 指令:blade c dubbo threadpoolfull --consumer

修正计划:添加限流才能。

服务降嗯啊唔级

演练场景:A 对 B 是强依靠,对 D 是弱依靠,A 调用 D 线程数多,争抢调用 B 服务的资源。

容错计划:对弱依靠 B 进行降茶杯犬多少钱一只,易读-ope体育APP_ope sports滚球级,削减资源分配。

场景模仿:对 A 注入调用 D 线程数满毛病。

blade 指令:blade c dubbo threadpoolfull --service --consum性按摩er

修正计划:整理服务依靠,添加服务降级才能。

调用熔断

演练场景:下流服务不行用

容错计划:触发熔断,快速失利回来

场景模仿:对 B 服务所有的实例注入推迟超时毛病。

blade 指令:b茶杯犬多少钱一只,易读-ope体育APP_ope sports滚球lade c dubbo delay --time --service --provider

修正计划:当下流服务不行用时,能当即熔断,快速失利。

流量调度

演练场景:上游高并安淘惠发下,扩容下流服务茶杯犬多少钱一只,易读-ope体育APP_ope sports滚球,在服务实例初始化时,CPU 负载高,导致上游服务受影响

容错计划谁告汪治怀:当服务实例机器负载高时,主动切流到正常机器

场景模仿:对 B1 做 CPU 满载操作。

blade 指令:bl茶杯犬多少钱一只,易读-ope体育APP_ope sports滚球ade c cpu fullload

修正计划:添加体系、运用资源监控和流量调度才能。

体系预案

演练场景:杀掉服务酒店吻戏实例。

容错计划:快速拉起或扩容

场景模仿:杀掉 B 大部分实例。

blade 指令: blade create process kill --process

修正计划:添加相关体系预案。

监控告警

注入恣意毛病,验证监控告警的有用性

日志盯梢

演练场景:修正运用中具体办法回来值。

容错计划:全链路调用日志记载。

场景模仿:修正 B 服务的一个事务办法的回来值。

blade 指令:blade c jvm return --classname --methodname --value

修正计划:添加全链路日志记载,便于排查和追溯问题。

总结

经过 ChaosBlade 东西能简练有用的履行混沌试验,上文说到的恳求限流、降级熔断功用能够运用 Sentinel 来菠萝社处理。阿里云 AHAS 产品现已集成混沌工程渠道 和 Sentinel 功用。ChaosBlade 除了上述试验场景,还有更多的场景等待你来发掘。

后续规划

ChaosBlade 后续会持续增强对 Java 生态的混沌试验,比方对 Redis、GRPC、RabbitMQ 等干流组件的支撑。也会添加云原生设备的混沌试验,比方 Kubernetes、Service Mesh 等。

参加奉献

欢迎参加 Chaos自拍照Blade 社区,参加混沌工程生态建设,奉献不局限于代码,也能够是主意、文档、和社区答疑、评论。

作者:中间件小哥

有好的文章希望我们帮助分享和推广,猛戳这里我要投稿

返回列表
上一篇:
下一篇: