Jmeter模拟雪崩效应

一 测试构造

修改service-edu

1 tomcat并发修改

server:
  tomcat:
    max-threads: 10 #tomcat的最大并发值修改为10,默认是200

2 controller测试方法

TeacherController中添加并发测试方法

/**
* 功能描述:并发测试
*
* @return R 返回给前端的数据
* @author cakin
* @date 2020/11/29
*/
@ApiOperation("测试并发")
@GetMapping("test_concurrent")
public R testConcurrent() {
    log.info("test_concurrent");
    return R.ok();
}

3 测试

访问 test_concurrent,立即得到响应结果。

二 Jmeter并发测试工具

1 JMeter下载和安装

下载地址:https://jmeter.apache.org/ apache-jmeter-5.2.1.zip

下载版本:apache-jmeter-5.2.1.zip,解压任意目录即可

2 配置

/bin/jmeter.properties 37行,改为简体中文

language=zh_CN

3 启动JMeter

- Windows

启动:双击bin/jmeter.bat运行文件

三 使用Jmeter测试高并发

1 添加线程组

2 配置线程并发

3 添加Http取样器

4 配置Http取样器

5 配置查看结果树

6 启动测试

7 测试并发

当test接口收到高并发访问请求时,同一服务器上的test_concurrent接口响应延迟严重。

四 服务雪崩

分布式系统环境下,通常会有很多层的服务调用。由于网络原因或自身的原因,服务一般无法保证 100% 可用。如果一个服务出现了问题,调用这个服务就会出现线程阻塞的情况,此时若有大量的请求涌入,就会出现多条线程阻塞等待,进而导致服务瘫痪。

如下图,对于同步调用,当底层的库存服务不可用时,商品服务请求线程被阻塞,当有大批量请求调用库存服务时,最终可能导致整个商品服务资源耗尽,无法继续对外提供服务。

由于服务与服务之间的依赖性,故障会传播,不可用沿请求调用链向上传递,会对整个微服务系统造成灾难性的严重后果,这就是服务故障的 “雪崩效应” 。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值