Jmeter中的定时器
4)定时器

1--固定定时器
功能特点
- 固定延迟:在每个请求之间添加固定的延迟时间。
- 精确控制:可以精确控制请求的发送频率。
- 简单易用:配置简单,易于理解和使用。
配置步骤
-
添加固定定时器
- 右键点击需要添加定时器的请求或线程组。
- 选择“添加” -> “定时器” -> “固定定时器”(Constant Timer)。
-
配置固定定时器
- 名称:给固定定时器一个有意义的名称。
- 线程延迟(毫秒):设置每个请求之间的固定延迟时间(单位为毫秒)。
示例配置
假设我们需要测试一个Web应用,并在每个请求之间添加2秒(2000毫秒)的固定延迟。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:请求名称(例如“获取用户列表”)。
- 服务器名称或IP:目标服务器的地址(例如
example.com)。 - 端口号:目标服务器的端口(例如
80)。 - 协议:HTTP或HTTPS(例如
HTTP)。 - 方法:请求的方法(例如
GET)。 - 路径:请求的路径(例如
/api/users)。
-
添加固定定时器:
- 右键点击HTTP请求 -> 添加 -> 定时器 -> 固定定时器。
- 配置固定定时器:
- 名称:固定定时器
- 线程延迟(毫秒):2000(表示每个请求之间延迟2秒)
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。
优化建议
-
延迟时间:
- 根据实际需求设置合适的延迟时间。过短的延迟可能导致服务器过载,过长的延迟可能无法充分测试系统的性能。
-
放置位置:
- 固定定时器可以放在线程组级别或特定请求级别。放在线程组级别会影响该线程组中的所有请求,放在特定请求级别只影响该请求。
-
多请求场景:
- 如果有多个请求需要添加固定延迟,可以为每个请求单独添加固定定时器,或者将多个请求放在一个线程组中,然后在该线程组中添加固定定时器。
-
性能影响:
- 固定定时器不会显著影响测试性能,但在大规模性能测试中,仍需注意总体的测试设计,确保延迟时间合理。
-
组合使用:
- 固定定时器可以与其他定时器(如高斯随机定时器、统一随机定时器等)组合使用,以实现更复杂的延迟策略。
示例配置详细说明
假设我们有一个简单的测试计划,包含一个线程组和一个HTTP请求,并希望在每个请求之间添加2秒的固定延迟。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
- 配置线程组:
- 线程数:10(模拟10个用户)
- 循环次数:10(每个用户发送10次请求)
- 启动延迟:0(立即启动)
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:获取用户列表
- 服务器名称或IP:example.com
- 端口号:80
- 协议:HTTP
- 方法:GET
- 路径:/api/users
-
添加固定定时器:
- 右键点击HTTP请求 -> 添加 -> 定时器 -> 固定定时器。
- 配置固定定时器:
- 名称:固定定时器
- 线程延迟(毫秒):2000
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。

2--统一随机定时器
功能特点
- 随机延迟:在每个请求之间添加随机的延迟时间。
- 均匀分布:延迟时间在指定的范围内均匀分布。
- 灵活控制:可以精确控制请求的发送频率,同时引入随机性。
配置步骤
-
添加统一随机定时器
- 右键点击需要添加定时器的请求或线程组。
- 选择“添加” -> “定时器” -> “统一随机定时器”(Uniform Random Timer)。
-
配置统一随机定时器
- 名称:给统一随机定时器一个有意义的名称。
- 偏移(毫秒):设置延迟时间的上下限范围。
- 延迟(毫秒):设置基础延迟时间。
参数说明
- 偏移(毫秒):设置随机延迟时间的范围。例如,如果设置为1000毫秒,则延迟时间将在基础延迟时间的基础上随机增加或减少最多1000毫秒。
- 延迟(毫秒):设置基础延迟时间。例如,如果设置为2000毫秒,则每个请求的基础延迟时间为2000毫秒。
示例配置
假设我们需要测试一个Web应用,并在每个请求之间添加2秒(2000毫秒)的基础延迟,同时在±1秒(1000毫秒)的范围内随机波动。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:请求名称(例如“获取用户列表”)。
- 服务器名称或IP:目标服务器的地址(例如
example.com)。 - 端口号:目标服务器的端口(例如
80)。 - 协议:HTTP或HTTPS(例如
HTTP)。 - 方法:请求的方法(例如
GET)。 - 路径:请求的路径(例如
/api/users)。
-
添加统一随机定时器:
- 右键点击HTTP请求 -> 添加 -> 定时器 -> 统一随机定时器。
- 配置统一随机定时器:
- 名称:统一随机定时器
- 偏移(毫秒):1000
- 延迟(毫秒):2000
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。
优化建议
-
延迟时间:
- 根据实际需求设置合适的基础延迟时间和偏移时间。过短的延迟可能导致服务器过载,过长的延迟可能无法充分测试系统的性能。
-
放置位置:
- 统一随机定时器可以放在线程组级别或特定请求级别。放在线程组级别会影响该线程组中的所有请求,放在特定请求级别只影响该请求。
-
多请求场景:
- 如果有多个请求需要添加随机延迟,可以为每个请求单独添加统一随机定时器,或者将多个请求放在一个线程组中,然后在该线程组中添加统一随机定时器。
-
性能影响:
- 统一随机定时器不会显著影响测试性能,但在大规模性能测试中,仍需注意总体的测试设计,确保延迟时间合理。
-
组合使用:
- 统一随机定时器可以与其他定时器(如固定定时器、高斯随机定时器等)组合使用,以实现更复杂的延迟策略。
示例配置详细说明
假设我们有一个简单的测试计划,包含一个线程组和一个HTTP请求,并希望在每个请求之间添加2秒的基础延迟,同时在±1秒的范围内随机波动。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
- 配置线程组:
- 线程数:10(模拟10个用户)
- 循环次数:10(每个用户发送10次请求)
- 启动延迟:0(立即启动)
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:获取用户列表
- 服务器名称或IP:example.com
- 端口号:80
- 协议:HTTP
- 方法:GET
- 路径:/api/users
-
添加统一随机定时器:
- 右键点击HTTP请求 -> 添加 -> 定时器 -> 统一随机定时器。
- 配置统一随机定时器:
- 名称:统一随机定时器
- 偏移(毫秒):1000
- 延迟(毫秒):2000
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。

3--Precise Throughpupt Timer
功能特点
- 精确控制请求速率:确保在指定的时间段内发送指定数量的请求。
- 灵活配置:可以设置每分钟发送的请求数量或每个线程组的吞吐量。
- 适用于高精度测试:特别适合需要精确控制请求频率的性能测试。
配置步骤
-
添加精确吞吐量定时器
- 右键点击需要添加定时器的请求或线程组。
- 选择“添加” -> “定时器” -> “精确吞吐量定时器”(Precise Throughput Timer)。
-
配置精确吞吐量定时器
- 名称:给精确吞吐量定时器一个有意义的名称。
- 吞吐量:设置每分钟发送的请求数量。
- 持续时间(毫秒):(可选)设置定时器的持续时间,超过该时间后定时器将停止工作。
参数说明
- 吞吐量:设置每分钟发送的请求数量。例如,如果设置为60,则每分钟发送60个请求。
- 持续时间(毫秒):设置定时器的持续时间,超过该时间后定时器将停止工作。如果不设置,定时器将一直工作直到测试结束。
示例配置
假设我们需要测试一个Web应用,并确保每分钟发送60个请求。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
- 配置线程组:
- 线程数:10(模拟10个用户)
- 循环次数:10(每个用户发送10次请求)
- 启动延迟:0(立即启动)
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:请求名称(例如“获取用户列表”)。
- 服务器名称或IP:目标服务器的地址(例如
example.com)。 - 端口号:目标服务器的端口(例如
80)。 - 协议:HTTP或HTTPS(例如
HTTP)。 - 方法:请求的方法(例如
GET)。 - 路径:请求的路径(例如
/api/users)。
-
添加精确吞吐量定时器:
- 右键点击HTTP请求 -> 添加 -> 定时器 -> 精确吞吐量定时器。
- 配置精确吞吐量定时器:
- 名称:精确吞吐量定时器
- 吞吐量:60(每分钟发送60个请求)
- 持续时间(毫秒):(可选)如果不设置,定时器将一直工作直到测试结束
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。
优化建议
-
吞吐量设置:
- 根据实际需求设置合适的吞吐量。过高的吞吐量可能导致服务器过载,过低的吞吐量可能无法充分测试系统的性能。
-
持续时间设置:
- 如果需要在特定时间段内控制请求速率,可以设置持续时间。否则,定时器将一直工作直到测试结束。
-
放置位置:
- 精确吞吐量定时器可以放在线程组级别或特定请求级别。放在线程组级别会影响该线程组中的所有请求,放在特定请求级别只影响该请求。
-
多请求场景:
- 如果有多个请求需要控制请求速率,可以为每个请求单独添加精确吞吐量定时器,或者将多个请求放在一个线程组中,然后在该线程组中添加精确吞吐量定时器。
-
性能影响:
- 精确吞吐量定时器可能会对测试性能产生一定影响,特别是在大规模性能测试中。可以通过调整吞吐量和持续时间来优化性能。
-
组合使用:
- 精确吞吐量定时器可以与其他定时器(如固定定时器、统一随机定时器等)组合使用,以实现更复杂的延迟策略。
示例配置详细说明
假设我们有一个简单的测试计划,包含一个线程组和一个HTTP请求,并希望每分钟发送60个请求。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
- 配置线程组:
- 线程数:10(模拟10个用户)
- 循环次数:10(每个用户发送10次请求)
- 启动延迟:0(立即启动)
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:获取用户列表
- 服务器名称或IP:example.com
- 端口号:80
- 协议:HTTP
- 方法:GET
- 路径:/api/users
-
添加精确吞吐量定时器:
- 右键点击HTTP请求 -> 添加 -> 定时器 -> 精确吞吐量定时器。
- 配置精确吞吐量定时器:
- 名称:精确吞吐量定时器
- 吞吐量:60(每分钟发送60个请求)
- 持续时间(毫秒):(可选)如果不设置,定时器将一直工作直到测试结束
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。

4--Constant Throughpupt Timer
功能特点
- 恒定请求速率:确保在指定的时间段内保持恒定的吞吐量。
- 灵活配置:可以设置每分钟发送的请求数量或每个线程组的吞吐量。
- 适用于稳定负载测试:特别适合需要稳定控制请求频率的性能测试。
配置步骤
-
添加恒定吞吐量定时器
- 右键点击需要添加定时器的请求或线程组。
- 选择“添加” -> “定时器” -> “恒定吞吐量定时器”(Constant Throughput Timer)。
-
配置恒定吞吐量定时器
- 名称:给恒定吞吐量定时器一个有意义的名称。
- 目标吞吐量(每分钟):设置每分钟发送的请求数量。
- 计算所有子采样器:选择是否将定时器应用于当前线程组中的所有子采样器。
参数说明
- 目标吞吐量(每分钟):设置每分钟发送的请求数量。例如,如果设置为60,则每分钟发送60个请求。
- 计算所有子采样器:选择是否将定时器应用于当前线程组中的所有子采样器。如果选择“是”,则定时器将影响整个线程组中的所有请求;如果选择“否”,则定时器仅影响当前请求。
示例配置
假设我们需要测试一个Web应用,并确保每分钟发送60个请求。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
- 配置线程组:
- 线程数:10(模拟10个用户)
- 循环次数:10(每个用户发送10次请求)
- 启动延迟:0(立即启动)
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:请求名称(例如“获取用户列表”)。
- 服务器名称或IP:目标服务器的地址(例如
example.com)。 - 端口号:目标服务器的端口(例如
80)。 - 协议:HTTP或HTTPS(例如
HTTP)。 - 方法:请求的方法(例如
GET)。 - 路径:请求的路径(例如
/api/users)。
-
添加恒定吞吐量定时器:
- 右键点击线程组 -> 添加 -> 定时器 -> 恒定吞吐量定时器。
- 配置恒定吞吐量定时器:
- 名称:恒定吞吐量定时器
- 目标吞吐量(每分钟):60(每分钟发送60个请求)
- 计算所有子采样器:是(将定时器应用于整个线程组中的所有请求)
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。
优化建议
-
吞吐量设置:
- 根据实际需求设置合适的吞吐量。过高的吞吐量可能导致服务器过载,过低的吞吐量可能无法充分测试系统的性能。
-
计算所有子采样器:
- 如果需要控制整个线程组中的所有请求,选择“计算所有子采样器”。否则,选择“否”以仅影响当前请求。
-
放置位置:
- 恒定吞吐量定时器可以放在线程组级别或特定请求级别。放在线程组级别会影响该线程组中的所有请求,放在特定请求级别只影响该请求。
-
多请求场景:
- 如果有多个请求需要控制请求速率,可以为每个请求单独添加恒定吞吐量定时器,或者将多个请求放在一个线程组中,然后在该线程组中添加恒定吞吐量定时器。
-
性能影响:
- 恒定吞吐量定时器可能会对测试性能产生一定影响,特别是在大规模性能测试中。可以通过调整吞吐量来优化性能。
-
组合使用:
- 恒定吞吐量定时器可以与其他定时器(如固定定时器、统一随机定时器等)组合使用,以实现更复杂的延迟策略。
示例配置详细说明
假设我们有一个简单的测试计划,包含一个线程组和一个HTTP请求,并希望每分钟发送60个请求。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
- 配置线程组:
- 线程数:10(模拟10个用户)
- 循环次数:10(每个用户发送10次请求)
- 启动延迟:0(立即启动)
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:获取用户列表
- 服务器名称或IP:example.com
- 端口号:80
- 协议:HTTP
- 方法:GET
- 路径:/api/users
-
添加恒定吞吐量定时器:
- 右键点击线程组 -> 添加 -> 定时器 -> 恒定吞吐量定时器。
- 配置恒定吞吐量定时器:
- 名称:恒定吞吐量定时器
- 目标吞吐量(每分钟):60(每分钟发送60个请求)
- 计算所有子采样器:是(将定时器应用于整个线程组中的所有请求)
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。

5--JSR223 Timmer
功能特点
- 自定义延迟逻辑:使用脚本语言动态计算请求之间的延迟时间。
- 灵活控制:可以根据测试数据和条件动态调整延迟时间。
- 支持多种脚本语言:支持 Groovy、JavaScript、BeanShell 等多种脚本语言。
支持的脚本语言
- Groovy:推荐使用,性能优越且功能强大。
- JavaScript:支持 ECMAScript 标准。
- BeanShell:支持 Java 语法。
- 其他语言:支持任何符合 JSR223 规范的脚本语言。
配置步骤
-
添加 JSR223 定时器
- 右键点击需要添加定时器的请求或线程组。
- 选择“添加” -> “定时器” -> “JSR223 定时器”。
-
配置 JSR223 定时器
- 名称:给 JSR223 定时器一个有意义的名称。
- 脚本语言:选择使用的脚本语言(例如 Groovy)。
- 脚本文件:选择脚本文件路径(可选,如果脚本较长或需要版本控制)。
- 脚本:直接在脚本编辑框中编写脚本。
- 参数:定义脚本中使用的参数(可选)。
示例配置
假设我们需要测试一个Web应用,并在每个请求之间添加一个动态计算的延迟时间,延迟时间基于当前请求的响应时间。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
- 配置线程组:
- 线程数:10(模拟10个用户)
- 循环次数:10(每个用户发送10次请求)
- 启动延迟:0(立即启动)
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:请求名称(例如“获取用户列表”)。
- 服务器名称或IP:目标服务器的地址(例如
example.com)。 - 端口号:目标服务器的端口(例如
80)。 - 协议:HTTP或HTTPS(例如
HTTP)。 - 方法:请求的方法(例如
GET)。 - 路径:请求的路径(例如
/api/users)。
-
添加 JSR223 定时器:
- 右键点击HTTP请求 -> 添加 -> 定时器 -> JSR223 定时器。
- 配置 JSR223 定时器:
- 名称:JSR223 定时器
- 脚本语言:Groovy
- 脚本:在脚本编辑框中编写以下 Groovy 脚本:
// 获取上一个请求的响应时间 int responseTime = prev.getTime()// 计算延迟时间,例如延迟时间为响应时间的一半 int delay = responseTime / 2// 返回延迟时间(单位为毫秒) return delay
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。
优化建议
-
脚本语言选择:
- 推荐使用 Groovy,因为它性能优越且功能强大,是 JMeter 官方推荐的脚本语言。
-
脚本文件:
- 如果脚本较长或需要版本控制,可以将脚本保存到文件中,并在 JSR223 定时器中选择脚本文件路径。
-
参数:
- 如果脚本需要使用外部参数,可以在“参数”部分定义参数,并在脚本中引用这些参数。
-
性能影响:
- 注意复杂脚本可能会对测试性能产生影响,特别是在大规模性能测试中。可以通过优化脚本和减少不必要的操作来提高性能。
-
错误处理:
- 在脚本中添加适当的错误处理逻辑,确保脚本在遇到异常时能够优雅地处理。
-
日志记录:
- 使用日志记录功能可以帮助调试和分析脚本执行情况,确保日志文件路径有效且有足够的写权限。
示例配置详细说明
假设我们有一个简单的测试计划,包含一个线程组和一个HTTP请求,并希望在每个请求之间添加一个动态计算的延迟时间,延迟时间基于当前请求的响应时间。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
- 配置线程组:
- 线程数:10(模拟10个用户)
- 循环次数:10(每个用户发送10次请求)
- 启动延迟:0(立即启动)
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:获取用户列表
- 服务器名称或IP:example.com
- 端口号:80
- 协议:HTTP
- 方法:GET
- 路径:/api/users
-
添加 JSR223 定时器:
- 右键点击HTTP请求 -> 添加 -> 定时器 -> JSR223 定时器。
- 配置 JSR223 定时器:
- 名称:JSR223 定时器
- 脚本语言:Groovy
- 脚本:在脚本编辑框中编写以下 Groovy 脚本:
// 获取上一个请求的响应时间 int responseTime = prev.getTime()// 计算延迟时间,例如延迟时间为响应时间的一半 int delay = responseTime / 2// 返回延迟时间(单位为毫秒) return delay
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。

6--Synchronizing Timer
功能特点
- 并发控制:确保一组线程在同一时间点执行某个请求。
- 灵活配置:可以设置等待的线程数和超时时间。
- 适用于压力测试:特别适合需要模拟大量并发用户的场景。
配置步骤
-
添加同步定时器
- 右键点击需要添加定时器的请求或线程组。
- 选择“添加” -> “定时器” -> “同步定时器”(Synchronizing Timer)。
-
配置同步定时器
- 名称:给同步定时器一个有意义的名称。
- 数量的线程(用户):设置需要等待的线程数。
- 超时(毫秒):设置等待的最大时间(可选)。
参数说明
- 数量的线程(用户):设置需要等待的线程数。例如,如果设置为10,则需要等待10个线程都到达同步点后才会继续执行。
- 超时(毫秒):设置等待的最大时间。如果在指定时间内没有达到设定的线程数,定时器将释放已等待的线程。如果不设置,定时器将无限期等待。
示例配置
假设我们需要测试一个Web应用,并确保每次有10个用户同时执行某个请求。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
- 配置线程组:
- 线程数:20(模拟20个用户)
- 循环次数:1(每个用户发送1次请求)
- 启动延迟:0(立即启动)
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:请求名称(例如“获取用户列表”)。
- 服务器名称或IP:目标服务器的地址(例如
example.com)。 - 端口号:目标服务器的端口(例如
80)。 - 协议:HTTP或HTTPS(例如
HTTP)。 - 方法:请求的方法(例如
GET)。 - 路径:请求的路径(例如
/api/users)。
-
添加同步定时器:
- 右键点击HTTP请求 -> 添加 -> 定时器 -> 同步定时器。
- 配置同步定时器:
- 名称:同步定时器
- 数量的线程(用户):10(每次等待10个线程)
- 超时(毫秒):(可选)如果不设置,定时器将无限期等待
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。
优化建议
-
线程数设置:
- 根据实际需求设置合适的线程数。确保线程数足够大,以便能够达到所需的并发效果。
-
超时设置:
- 如果需要确保测试在一定时间内完成,可以设置超时时间。超时时间应根据系统响应时间和测试需求来设置。
-
放置位置:
- 同步定时器可以放在线程组级别或特定请求级别。放在线程组级别会影响该线程组中的所有请求,放在特定请求级别只影响该请求。
-
多请求场景:
- 如果有多个请求需要同步执行,可以为每个请求单独添加同步定时器,或者将多个请求放在一个线程组中,然后在该线程组中添加同步定时器。
-
性能影响:
- 同步定时器可能会对测试性能产生一定影响,特别是在大规模性能测试中。可以通过调整线程数和超时时间来优化性能。
-
组合使用:
- 同步定时器可以与其他定时器(如固定定时器、统一随机定时器等)组合使用,以实现更复杂的延迟策略。
示例配置详细说明
假设我们有一个简单的测试计划,包含一个线程组和一个HTTP请求,并希望每次有10个用户同时执行某个请求。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
- 配置线程组:
- 线程数:20(模拟20个用户)
- 循环次数:1(每个用户发送1次请求)
- 启动延迟:0(立即启动)
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:获取用户列表
- 服务器名称或IP:example.com
- 端口号:80
- 协议:HTTP
- 方法:GET
- 路径:/api/users
-
添加同步定时器:
- 右键点击HTTP请求 -> 添加 -> 定时器 -> 同步定时器。
- 配置同步定时器:
- 名称:同步定时器
- 数量的线程(用户):10(每次等待10个线程)
- 超时(毫秒):(可选)如果不设置,定时器将无限期等待
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。

7--泊松随机定时器
功能特点
- 泊松分布:使用泊松分布生成随机延迟时间,使延迟时间更加自然和随机。
- 灵活配置:可以设置平均延迟时间和偏差系数。
- 适用于模拟真实用户行为:特别适合需要模拟真实用户行为的性能测试。
配置步骤
-
添加泊松随机定时器
- 右键点击需要添加定时器的请求或线程组。
- 选择“添加” -> “定时器” -> “泊松随机定时器”(Poisson Random Timer)。
-
配置泊松随机定时器
- 名称:给泊松随机定时器一个有意义的名称。
- 常量延迟偏移(毫秒):设置平均延迟时间。
- 泊松分布的lambda值:设置泊松分布的λ值(Lambda值),控制随机延迟的分布。
参数说明
- 常量延迟偏移(毫秒):设置平均延迟时间。这是泊松分布的期望值(平均值)。
- 泊松分布的lambda值:设置泊松分布的λ值。λ值越大,随机延迟的波动范围越大。
示例配置
假设我们需要测试一个Web应用,并在每个请求之间添加基于泊松分布的随机延迟时间,平均延迟时间为2000毫秒(2秒)。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
- 配置线程组:
- 线程数:10(模拟10个用户)
- 循环次数:10(每个用户发送10次请求)
- 启动延迟:0(立即启动)
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:请求名称(例如“获取用户列表”)。
- 服务器名称或IP:目标服务器的地址(例如
example.com)。 - 端口号:目标服务器的端口(例如
80)。 - 协议:HTTP或HTTPS(例如
HTTP)。 - 方法:请求的方法(例如
GET)。 - 路径:请求的路径(例如
/api/users)。
-
添加泊松随机定时器:
- 右键点击HTTP请求 -> 添加 -> 定时器 -> 泊松随机定时器。
- 配置泊松随机定时器:
- 名称:泊松随机定时器
- 常量延迟偏移(毫秒):2000(平均延迟时间为2000毫秒)
- 泊松分布的lambda值:1.0(λ值为1.0,表示标准泊松分布)
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。
优化建议
-
平均延迟时间:
- 根据实际需求设置合适的平均延迟时间。过短的延迟可能导致服务器过载,过长的延迟可能无法充分测试系统的性能。
-
λ值设置:
- λ值控制随机延迟的分布。较大的λ值会导致更大的随机波动,较小的λ值会使延迟时间更集中于平均值。根据测试需求选择合适的λ值。
-
放置位置:
- 泊松随机定时器可以放在线程组级别或特定请求级别。放在线程组级别会影响该线程组中的所有请求,放在特定请求级别只影响该请求。
-
多请求场景:
- 如果有多个请求需要添加随机延迟,可以为每个请求单独添加泊松随机定时器,或者将多个请求放在一个线程组中,然后在该线程组中添加泊松随机定时器。
-
性能影响:
- 泊松随机定时器可能会对测试性能产生一定影响,特别是在大规模性能测试中。可以通过调整平均延迟时间和λ值来优化性能。
-
组合使用:
- 泊松随机定时器可以与其他定时器(如固定定时器、统一随机定时器等)组合使用,以实现更复杂的延迟策略。
示例配置详细说明
假设我们有一个简单的测试计划,包含一个线程组和一个HTTP请求,并希望在每个请求之间添加基于泊松分布的随机延迟时间,平均延迟时间为2000毫秒。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
- 配置线程组:
- 线程数:10(模拟10个用户)
- 循环次数:10(每个用户发送10次请求)
- 启动延迟:0(立即启动)
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:获取用户列表
- 服务器名称或IP:example.com
- 端口号:80
- 协议:HTTP
- 方法:GET
- 路径:/api/users
-
添加泊松随机定时器:
- 右键点击HTTP请求 -> 添加 -> 定时器 -> 泊松随机定时器。
- 配置泊松随机定时器:
- 名称:泊松随机定时器
- 常量延迟偏移(毫秒):2000(平均延迟时间为2000毫秒)
- 泊松分布的lambda值:1.0(λ值为1.0,表示标准泊松分布)
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。

8--高斯随机定时器
功能特点
- 高斯分布:使用高斯分布生成随机延迟时间,使延迟时间更加自然和随机。
- 灵活配置:可以设置平均延迟时间和标准差。
- 适用于模拟真实用户行为:特别适合需要模拟真实用户行为的性能测试。
配置步骤
-
添加高斯随机定时器
- 右键点击需要添加定时器的请求或线程组。
- 选择“添加” -> “定时器” -> “高斯随机定时器”(Gaussian Random Timer)。
-
配置高斯随机定时器
- 名称:给高斯随机定时器一个有意义的名称。
- 常量延迟偏移(毫秒):设置平均延迟时间。
- 高斯随机偏移(毫秒):设置标准差,控制随机延迟的分布范围。
参数说明
- 常量延迟偏移(毫秒):设置平均延迟时间。这是高斯分布的均值(μ)。
- 高斯随机偏移(毫秒):设置标准差(σ),控制随机延迟的分布范围。标准差越大,随机延迟的波动范围越大。
示例配置
假设我们需要测试一个Web应用,并在每个请求之间添加基于高斯分布的随机延迟时间,平均延迟时间为2000毫秒(2秒),标准差为500毫秒。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
- 配置线程组:
- 线程数:10(模拟10个用户)
- 循环次数:10(每个用户发送10次请求)
- 启动延迟:0(立即启动)
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:请求名称(例如“获取用户列表”)。
- 服务器名称或IP:目标服务器的地址(例如
example.com)。 - 端口号:目标服务器的端口(例如
80)。 - 协议:HTTP或HTTPS(例如
HTTP)。 - 方法:请求的方法(例如
GET)。 - 路径:请求的路径(例如
/api/users)。
-
添加高斯随机定时器:
- 右键点击HTTP请求 -> 添加 -> 定时器 -> 高斯随机定时器。
- 配置高斯随机定时器:
- 名称:高斯随机定时器
- 常量延迟偏移(毫秒):2000(平均延迟时间为2000毫秒)
- 高斯随机偏移(毫秒):500(标准差为500毫秒)
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。
优化建议
-
平均延迟时间:
- 根据实际需求设置合适的平均延迟时间。过短的延迟可能导致服务器过载,过长的延迟可能无法充分测试系统的性能。
-
标准差设置:
- 标准差控制随机延迟的分布范围。较大的标准差会导致更大的随机波动,较小的标准差会使延迟时间更集中于平均值。根据测试需求选择合适的标准差。
-
放置位置:
- 高斯随机定时器可以放在线程组级别或特定请求级别。放在线程组级别会影响该线程组中的所有请求,放在特定请求级别只影响该请求。
-
多请求场景:
- 如果有多个请求需要添加随机延迟,可以为每个请求单独添加高斯随机定时器,或者将多个请求放在一个线程组中,然后在该线程组中添加高斯随机定时器。
-
性能影响:
- 高斯随机定时器可能会对测试性能产生一定影响,特别是在大规模性能测试中。可以通过调整平均延迟时间和标准差来优化性能。
-
组合使用:
- 高斯随机定时器可以与其他定时器(如固定定时器、统一随机定时器等)组合使用,以实现更复杂的延迟策略。
示例配置详细说明
假设我们有一个简单的测试计划,包含一个线程组和一个HTTP请求,并希望在每个请求之间添加基于高斯分布的随机延迟时间,平均延迟时间为2000毫秒,标准差为500毫秒。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
- 配置线程组:
- 线程数:10(模拟10个用户)
- 循环次数:10(每个用户发送10次请求)
- 启动延迟:0(立即启动)
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:获取用户列表
- 服务器名称或IP:example.com
- 端口号:80
- 协议:HTTP
- 方法:GET
- 路径:/api/users
-
添加高斯随机定时器:
- 右键点击HTTP请求 -> 添加 -> 定时器 -> 高斯随机定时器。
- 配置高斯随机定时器:
- 名称:高斯随机定时器
- 常量延迟偏移(毫秒):2000(平均延迟时间为2000毫秒)
- 高斯随机偏移(毫秒):500(标准差为500毫秒)
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。

9--BeanShell Timer
功能特点
- 自定义延迟逻辑:使用 BeanShell 脚本动态计算请求之间的延迟时间。
- 灵活控制:可以根据测试数据和条件动态调整延迟时间。
- 支持 BeanShell 脚本:支持使用 BeanShell 脚本语言编写延迟逻辑。
配置步骤
-
添加 BeanShell 定时器
- 右键点击需要添加定时器的请求或线程组。
- 选择“添加” -> “定时器” -> “BeanShell 定时器”。
-
配置 BeanShell 定时器
- 名称:给 BeanShell 定时器一个有意义的名称。
- 文件:选择脚本文件路径(可选,如果脚本较长或需要版本控制)。
- 脚本:直接在脚本编辑框中编写脚本。
- 参数:定义脚本中使用的参数(可选)。
示例配置
假设我们需要测试一个Web应用,并在每个请求之间添加一个动态计算的延迟时间,延迟时间基于当前请求的响应时间。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
- 配置线程组:
- 线程数:10(模拟10个用户)
- 循环次数:10(每个用户发送10次请求)
- 启动延迟:0(立即启动)
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:请求名称(例如“获取用户列表”)。
- 服务器名称或IP:目标服务器的地址(例如
example.com)。 - 端口号:目标服务器的端口(例如
80)。 - 协议:HTTP或HTTPS(例如
HTTP)。 - 方法:请求的方法(例如
GET)。 - 路径:请求的路径(例如
/api/users)。
-
添加 BeanShell 定时器:
- 右键点击HTTP请求 -> 添加 -> 定时器 -> BeanShell 定时器。
- 配置 BeanShell 定时器:
- 名称:BeanShell 定时器
- 脚本:在脚本编辑框中编写以下 BeanShell 脚本:
// 获取上一个请求的响应时间 int responseTime = prev.getTime();// 计算延迟时间,例如延迟时间为响应时间的一半 int delay = responseTime / 2;// 返回延迟时间(单位为毫秒) return delay;
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。
优化建议
-
脚本语言选择:
- 虽然 BeanShell 是一个强大的脚本语言,但 Groovy 通常性能更好且功能更强大。如果可能,建议使用 Groovy 脚本。
-
脚本文件:
- 如果脚本较长或需要版本控制,可以将脚本保存到文件中,并在 BeanShell 定时器中选择脚本文件路径。
-
参数:
- 如果脚本需要使用外部参数,可以在“参数”部分定义参数,并在脚本中引用这些参数。
-
性能影响:
- 注意复杂脚本可能会对测试性能产生影响,特别是在大规模性能测试中。可以通过优化脚本和减少不必要的操作来提高性能。
-
错误处理:
- 在脚本中添加适当的错误处理逻辑,确保脚本在遇到异常时能够优雅地处理。
-
日志记录:
- 使用日志记录功能可以帮助调试和分析脚本执行情况,确保日志文件路径有效且有足够的写权限。
示例配置详细说明
假设我们有一个简单的测试计划,包含一个线程组和一个HTTP请求,并希望在每个请求之间添加一个动态计算的延迟时间,延迟时间基于当前请求的响应时间。
-
创建测试计划:
- 右键点击“测试计划” -> 新建 -> 输入测试计划名称(例如“Web应用性能测试”)。
-
添加线程组:
- 右键点击测试计划 -> 添加 -> 线程组 -> 输入线程组名称(例如“用户模拟”)。
- 配置线程组:
- 线程数:10(模拟10个用户)
- 循环次数:10(每个用户发送10次请求)
- 启动延迟:0(立即启动)
-
添加HTTP请求:
- 右键点击线程组 -> 添加 -> 取样器 -> HTTP请求。
- 配置HTTP请求:
- 名称:获取用户列表
- 服务器名称或IP:example.com
- 端口号:80
- 协议:HTTP
- 方法:GET
- 路径:/api/users
-
添加 BeanShell 定时器:
- 右键点击HTTP请求 -> 添加 -> 定时器 -> BeanShell 定时器。
- 配置 BeanShell 定时器:
- 名称:BeanShell 定时器
- 脚本:在脚本编辑框中编写以下 BeanShell 脚本:
// 获取上一个请求的响应时间 int responseTime = prev.getTime();// 计算延迟时间,例如延迟时间为响应时间的一半 int delay = responseTime / 2;// 返回延迟时间(单位为毫秒) return delay;
-
运行测试:
- 点击工具栏上的“启动”按钮,运行测试。

相关文章:
Jmeter中的定时器
4)定时器 1--固定定时器 功能特点 固定延迟:在每个请求之间添加固定的延迟时间。精确控制:可以精确控制请求的发送频率。简单易用:配置简单,易于理解和使用。 配置步骤 添加固定定时器 右键点击需要添加定时器的请求…...
C++自动化测试:GTest 与 GitLab CI/CD 的完美融合
在现代软件开发中,自动化测试是保证代码质量和稳定性的关键手段。对于C项目而言,自动化测试尤为重要,它能有效捕捉代码中的潜在缺陷,提高代码的可维护性和可靠性。本文将重点介绍如何在C项目中结合使用Google Test(GTe…...
vscode连接远程开发机报错
远程开发机更新,vscode连接失败 报错信息 "install" terminal command done Install terminal quit with output: Host key verification failed. Received install output: Host key verification failed. Failed to parse remote port from server ou…...
神经网络12-Time-Series Transformer (TST)模型
Time-Series Transformer (TST) 是一种基于 Transformer 架构的深度学习模型,专门用于时序数据的建模和预测。TST 是 Transformer 模型的一个变种,针对传统时序模型(如 RNN、LSTM)在处理长时间依赖、复杂数据关系时的限制而提出的…...
IDEA 2024安装指南(含安装包以及使用说明 cannot collect jvm options 问题 四)
汉化 setting 中选择插件 完成 安装出现问题 1.可能是因为之前下载过的idea,找到连接中 文件,卸载即可。...
Fakelocation Server服务器/专业版 Centos7
前言:需要Centos7系统 Fakelocation开源文件系统需求 Centos7 | Fakelocation | 任务一 更新Centos7 (安装下载不再赘述) sudo yum makecache fastsudo yum update -ysudo yum install -y kernelsudo reboot//如果遇到错误提示为 Another app is curre…...
oracle的静态注册和动态注册
oracle的静态注册和动态注册 静态注册: 静态注册 : 指将实例的相关信息手动告知 listener 侦 听 器 , 可以使用netmgr,netca,oem 以及直接 vi listener.ora 文件来实现静态注册,在动态注册不稳定时使用,特点是:稳定&…...
机器翻译基础与模型 之四:模型训练
1、开放词表 1.1 大词表和未登陆词问题 理想情况下,机器翻译应该是一个开放词表(Open Vocabulary)的翻译任务。也就是,无论测试数据中包含什么样的词,机器翻译系统都应该能够正常翻译。 现实的情况是即使不断扩充词…...
Vue——响应式数据,v-on,v-bind,v-if,v-for(内含项目实战)
目录 响应式数据 ref reactive 事件绑定指令 v-on v-on 鼠标监听事件 v-on 键盘监听事件 v-on 简写形式 属性动态化指令 v-bind iuput标签动态属性绑定 img标签动态属性绑定 b标签动态属性绑定 v-bind 简写形式 条件渲染指令 v-if 遍历指令 v-for 遍历对象的值 遍历…...
ceph 18.2.4二次开发,docker镜像制作
编译环境要求 #需要ubuntu 22.04版本 参考https://docs.ceph.com/en/reef/start/os-recommendations/ #磁盘空间最好大于200GB #内存如果小于100GB 会有OOM的情况发生,需要重跑 目前遇到内存占用最高为92GB替换阿里云ubuntu 22.04源 将下面内容写入/etc/apt/sources.list 文件…...
产品经理的项目管理课
各位产品经理,大家下午好,今天我给大家分享的主题是“产品经理如何做好项目管理”。 其实,我是不想分享这个主题的,是因为在周会中大家投票对这个议题最感兴趣,11个同学中有7个投了这个主题,所以才有了这次…...
Linux 下的 AWK 命令详细指南与示例
目录 简介AWK 的主要特性基本语法示例1. 打印文件的所有行2. 打印特定字段3. 打印匹配模式的行4. 基于条件过滤并打印5. 使用内置变量6. 执行算术运算7. 字符串操作8. 使用 BEGIN 和 END 块9. 处理分隔符文件 高级功能自定义脚本使用外部变量 总结 简介 AWK 是 Linux 中功能强…...
FPGA经验谈系列文章——8、复位的设计
前言 剑法往往有着固定的招式套路,而写代码似乎也存在类似的情况。不知从何时起,众多 FPGA 工程师们在编写代码时开启了一种关于 always 语句块的流行写法,那就是: always @(posedge i_clk or negedge i_rstn) 就笔者所经历的诸多项目以及所接触到的不少工程师而言,大家在…...
C#里怎么样实现操作符重载?
C#里怎么样实现操作符重载? 一般情况,都是表示某种类型的类时,才会使用到操作符重载。 比如实现一个复数类。 在C#中,重载运算符是通过在类或结构中定义特殊的方法来实现的,这些方法的名称是operator关键字后跟要重载的运算符。例如,要重载+运算符,可以定义一个名为op…...
项目实战:Vue3开发一个购物车
这段HTML代码实现了一个简单的购物车实战小项目的前端页面,结合了Vue.js框架来实现数据响应式和交互逻辑。页面展示了购物车中的商品项,每个商品项有增减数量的按钮,并且能显示商品总数以及目前固定为0元的商品总价和总价计算。 【运用响应式…...
Oracle SQL*Plus中的SET VERIFY
在 Oracle SQL*Plus 中,SET VERIFY ON 和 SET VERIFY OFF 是两个用于控制命令执行前后显示变量值的命令。这些命令主要用于调试和验证 SQL 脚本中的变量替换情况。 一、参数说明 1.1 SET VERIFY ON 作用:启用变量替换的验证功能。当启用时,S…...
Spring AI 框架使用的核心概念
一、模型(Model) AI 模型是旨在处理和生成信息的算法,通常模仿人类的认知功能。通过从大型数据集中学习模式和见解,这些模型可以做出预测、文本、图像或其他输出,从而增强各个行业的各种应用。 AI 模型有很多种&…...
二叉树路径相关算法题|带权路径长度WPL|最长路径长度|直径长度|到叶节点路径|深度|到某节点的路径非递归(C)
带权路径长度WPL 二叉树的带权路径长度(WPL)是二叉树所有叶节点的带权路径长度之和,给定一棵二叉树T,采用二叉链表存储,节点结构为 其中叶节点的weight域保存该节点的非负权值,设root为指向T的根节点的指针,设计求W…...
前端:JavaScript (学习笔记)【2】
目录 一,数组的使用 1,数组的创建 [ ] 2,数组的元素和长度 3,数组的遍历方式 4,数组的常用方法 二,JavaScript中的对象 1,常用对象 (1)String和java中的Stri…...
[面试]-golang基础面试题总结
文章目录 panic 和 recover**注意事项**使用 pprof、trace 和 race 进行性能调试。**Go Module**:Go中new和make的区别 Channel什么是 Channel 的方向性?如何对 Channel 进行方向限制?Channel 的缓冲区大小对于 Channel 和 Goroutine 的通信有…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
Vue记事本应用实现教程
文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展:显示创建时间8. 功能扩展:记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...
阿里云ACP云计算备考笔记 (5)——弹性伸缩
目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...
linux arm系统烧录
1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...
令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...
html-<abbr> 缩写或首字母缩略词
定义与作用 <abbr> 标签用于表示缩写或首字母缩略词,它可以帮助用户更好地理解缩写的含义,尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时,会显示一个提示框。 示例&#x…...
【VLNs篇】07:NavRL—在动态环境中学习安全飞行
项目内容论文标题NavRL: 在动态环境中学习安全飞行 (NavRL: Learning Safe Flight in Dynamic Environments)核心问题解决无人机在包含静态和动态障碍物的复杂环境中进行安全、高效自主导航的挑战,克服传统方法和现有强化学习方法的局限性。核心算法基于近端策略优化…...
【JavaSE】多线程基础学习笔记
多线程基础 -线程相关概念 程序(Program) 是为完成特定任务、用某种语言编写的一组指令的集合简单的说:就是我们写的代码 进程 进程是指运行中的程序,比如我们使用QQ,就启动了一个进程,操作系统就会为该进程分配内存…...
WPF八大法则:告别模态窗口卡顿
⚙️ 核心问题:阻塞式模态窗口的缺陷 原始代码中ShowDialog()会阻塞UI线程,导致后续逻辑无法执行: var result modalWindow.ShowDialog(); // 线程阻塞 ProcessResult(result); // 必须等待窗口关闭根本问题:…...
Xela矩阵三轴触觉传感器的工作原理解析与应用场景
Xela矩阵三轴触觉传感器通过先进技术模拟人类触觉感知,帮助设备实现精确的力测量与位移监测。其核心功能基于磁性三维力测量与空间位移测量,能够捕捉多维触觉信息。该传感器的设计不仅提升了触觉感知的精度,还为机器人、医疗设备和制造业的智…...
