JMeter中GRPC Request连接无法复用,是否有keepalive类配置实现连接复用?
gRPC连接复用配置方案
你使用的JMeter GRPC Request取样器默认会为单次请求独立创建通道,请求执行完成后立即销毁通道,因此无法复用连接,可通过以下配置实现连接复用:
1. 调整通道共享策略
- 打开GRPC Request取样器配置界面,找到
通道共享(Channel sharing)配置项 - 默认取值为
每个取样器每个线程(Per sampler per thread),修改为每个线程(Per thread)即可让同一个线程的所有请求复用同一个通道;如果需要同一个线程组内的所有取样器共用同一个通道,可修改为每个线程组(Per thread group)
2. 配置keepalive维持长连接(可选,用于避免空闲连接被服务端主动断开)
如果需要长时间维持空闲连接不被断开,可在取样器的高级(Advanced)配置栏调整以下参数:
- 勾选
开启keepalive(Enable keepalive)选项 keepalive发送间隔(Keepalive time, 单位ms):建议设置为30000(30秒),可根据服务端的空闲连接检测规则调整keepalive超时时间(Keepalive timeout, 单位ms):建议设置为5000(5秒),心跳无响应超过该时长则判定连接断开- 勾选
无调用时也发送keepalive(Keepalive without calls):空闲无请求时也会持续发送心跳,避免服务端判定连接空闲主动断开
3. 配置后的测试计划参考
如果需要验证连接复用效果,可将线程组的循环次数设置为大于1,结构如下:
-- Thread Group -- GRPC Request(已修改通道共享策略、开启keepalive)
配置完成后同一个线程的多次循环请求会复用同一个连接,不会每次请求都新建销毁连接。
内容的提问来源于stack exchange,提问作者Paul
相关产品推荐
相关产品推荐

