问答 压力测试部署在 k8s 上的服务,cpu 压力上不去。

jiang_ba_tian · 2025年07月24日 · 最后由 jiang_ba_tian 回复于 2025年08月01日 · 5234 次阅读

如题:
1.压力测试 rocketmq(和 kafka 一样,消息中间件)。服务部署在 k8s 集群上。
2.jmeter 同样部署在 k8s。共 9~13 个副本数。
3.当 rocketmq 的 broker 和 proxy 副本数很少的时候,能够跑满 cpu。但是当副本数变多的时候,cpu 就跑不满了。
4.已经排查过。不是以下原因导致的
a.客户端压力没给够
b.磁盘读写瓶颈
5.我想到的唯一可能性就是 k8s 负载均衡不好,导致压力无法传到到 pod 上

大佬们提供下思路啊, 非常感谢

最佳回复

🗣 如果走的 k8s ingress 的话,可以监控下 ingress 是否有瓶颈(可以试试 svc),还有服务端对应节点物理机网卡、内核参数等

共收到 6 条回复 时间 点赞

看看压测数据和消息中间件的 partitioner 的逻辑,是不是 partition 策略导致不均衡。

2楼 已删除

🗣 如果走的 k8s ingress 的话,可以监控下 ingress 是否有瓶颈(可以试试 svc),还有服务端对应节点物理机网卡、内核参数等

服务端对应节点物理机的 CPU 应该也看下吧,我遇到的虚拟机负载不均最常见的就是虚拟机所在的物理机 CPU 已经到瓶颈了,导致这台物理机上虚拟机的 CPU 用不上去,比其他的低

孙高飞 回复

好的 我去瞅瞅

Bob 回复

感谢大佬思路。我也一直和领导强调最好用物理机压测,可惜领导不听,人微言轻

用的就是 svc

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册