模拟并发的 4 种方式,还有谁不会??(1)

简介: 模拟并发的 4 种方式,还有谁不会??(1)

一、Postman


Postman 是一个款 HTTP 请求模拟工具


1.png


首先演示一下 Postman 最基本的使用,创建一个 Spring Boot 项目,测试的代码如下:


import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("test")
public class TestConrtoller {
    @GetMapping("demo")
    public String testDemo() {
        return "result~";
    }
}


2.png


为了便于操作,一般会将


http://127.0.0.1:8080 是经常使用的地址+端口号,可以设置为环境,点击右上角的设置图标


3.png


选择 global


4.png


输入信息


5.png


以后再进行测试就能这样搞简写了


6.png


知道基本使用之后,我们来看一下如何模拟并发测试


7.png


填写基本信息后,创建:


8.png


这个时候会创建出Concurrency的文件夹,我们可以把刚才测试的demo的例子放进这个文件夹下:


9.png


10.png


这个时候就可以在Concurrency下看到这个接口测试了


11.png


选择并发测试:


12.png


这个时候弹出我们想要的框了


13.png


点击 Run Concurrency


你可以立马感觉到 CPU 在“燃烧”,因为要记录并打印日志,显示的话是一条一条来的,其实测试的速度,要比你看到的打印的日志的速度快,绿色表示正常


14.png


二、Apache Bench(AB)


ApacheBench 是 Apache 服务器自带的一个web压力测试工具,简称ab。


ab又是一个命令行工具,对发起负载的本机要求很低,根据ab命令可以创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问,因此可以用来测试目标服务器的负载压力。总的来说ab工具小巧简单,上手学习较快,可以提供需要的基本性能指标,但是没有图形化结果,不能监控。


使用的话,首先需要安装 Apache 服务器


网站:传送门 http://httpd.apache.org/download.cgi


因为我的操作系统是 windows10, 这里选择 File for Microsoft Windows


Linux下的安装是非常简单的,这里不再演示


15.png


选择 ApacheHaus


1.png


进入下载页面 选择适合自己电脑的版本


17.png


文件解压到本地文件夹下,如果不是解压在c盘,需要设置参数,注意文件路径最好都是英文,关于需要设置参数,conf->httpd.conf 使用文本编辑器打开,需要修改的有三个地方:


18.png

19.png

运行根目录,修改成自己解压到本地的路径


20.png


监听端口,默认监听端口是80,如果已被使用会报错需要修改,如果80端口未被使用,可不修改;如果修改了监听端口,则需要把ServerName localhost也相应改成同样的端 口号


22.png21.png


DocumentRoot 测试文件存放地,且该目录必须存在


image.png


配置完成后,命令行cmd进入 D:\softUtil\Apache24\bin 目录下


httpd.exe -k install

image.png


启动:


httpd.exe -k start


测试:


-n :请求数 -c: 并发数


24.png




相关文章
|
Java Spring
Spring Boot3整合knife4j(swagger3)
Spring Boot3整合knife4j(swagger3)
3708 1
LaTeX数学模式中的矩阵
LaTeX数学模式中的矩阵
1710 0
LaTeX数学模式中的矩阵
|
Linux 测试技术
|
数据安全/隐私保护
fiddler抓包-查看get与post请求参数
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_34173549/article/details/81566563 Fiddler抓包3-查看get与post请求 前言 前面两篇关于Fiddler抓包的一些基本配置,配置完之后就可以抓到我们想要的数据了,接下来就是如何去分析这些数据。
6868 0
|
人工智能 自然语言处理 Java
使用通义灵码插件提高开发效率
【2月更文挑战第2天】 通义灵码是阿里云开发的一个编码助手,基于AI大模型,提供代码智能生成,智能问答等功能,旨在加快编码,提高开发效率。
2249 3
使用通义灵码插件提高开发效率
|
Kubernetes Cloud Native Java
灰度发布、蓝绿部署、金丝雀都是啥?
在滚动部署中,应用的新版本逐步替换旧版本。实际的部署发生在一段时间内。在此期间,新旧版本会共存,而不会影响功能和用户体验。这个过程可以更轻易的回滚和旧组件不兼容的任何新组件。
灰度发布、蓝绿部署、金丝雀都是啥?
|
JSON 数据可视化 测试技术
python+requests接口自动化框架的实现
通过以上步骤,我们构建了一个基本的Python+Requests接口自动化测试框架。这个框架具有良好的扩展性,可以根据实际需求进行功能扩展和优化。它不仅能提高测试效率,还能保证接口的稳定性和可靠性,为软件质量提供有力保障。
618 7
|
机器学习/深度学习 算法 数据可视化
UniApp手机滑块验证组件代码生成器
UniApp手机滑块验证组件代码生成器
776 1
|
数据可视化 算法 Java
了解go语言运行时工具的作用
【5月更文挑战第16天】本文简介`runtime`库提供系统调用包装、执行跟踪、内存分配统计、运行时指标和剖析支持。`internal/syscall`封装系统调用,保证uintptr参数有效。`trace`用于执行跟踪,捕获各种事件,如goroutine活动、系统调用和GC事件。`ReadMemStats`提供内存分配器统计。`metrics`接口访问运行时定义的度量,包括CPU使用、GC和内存信息。`coverage`支持代码覆盖率分析,`cgo`处理C语言交互,`pprof`提供性能剖析工具集成。这些功能帮助优化和理解Go程序的运行行为。
217 6
|
缓存 NoSQL Java
【Azure Redis 缓存】定位Java Spring Boot 使用 Jedis 或 Lettuce 无法连接到 Redis的网络连通性步骤
【Azure Redis 缓存】定位Java Spring Boot 使用 Jedis 或 Lettuce 无法连接到 Redis的网络连通性步骤
331 0