混沌工程之 SpringBoot 集成 ChaosMonkey

举报
zuozewei 发表于 2021/09/28 12:34:46 2021/09/28
【摘要】 这几天在用一些混沌工程的工具,所以整理一下,以备参考。

前言

这几天在用一些混沌工程的工具,所以整理一下,以备参考。

后面有空再整理其他的工具,一个个都写一写。反正闲着也是闲着。

我没有按正规格式写专栏的习惯。所以就随意一点。

前提条件

有一个 SpringBoot 的应用。

具体操作

  1. 添加依赖
<dependency>
        <groupId>de.codecentric</groupId>
        <artifactId>chaos-monkey-spring-boot</artifactId>
        <version>2.3.1</version>
</dependency>
  1. 配置 application.yml
chaos:
  monkey:
    # 启动monkey
    enabled: true
    assaults:
      # 确定多少请求被攻击,1为攻击所有请求;5:每5个请求攻击一次
      level: 5
      # 增加最小延时,毫秒
      latency-range-start: 5000
      # 增加最大延时,毫秒
      latency-range-end: 10000
      # 延时攻击启动
      latency-active: true
      # 异常攻击启动
      exceptions-active: true
      # kill应用启动
      kill-application-active: true
    watcher: # 控制范围
      controller: false
      rest-controller: false
      service: true
      repository: false # (JDBC和JPA)
      component: false
  1. 添加启动参数

在这里插入图片描述

  1. 运行项目

在这里插入图片描述

  1. 访问接口
    在这里插入图片描述

看,出现了 8 秒响应时间的情况。

正常访问是:
在这里插入图片描述

由于前面加 了5-10 秒的随机延迟,所以上面出现了 8 秒的接口。

还有这种随机的 500 异常。

在这里插入图片描述
对应的日志如下:

在这里插入图片描述

总结

ChaosMonkey还能和 Spinnaker 集成,那是更为广泛的用法。 以后再写。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。