有人用 JMeter 做过 ThingsBoard 开源框架的性能测试吗?
压测上传遥测数据功能,需要模拟上万并发实时上传遥测数据,这么大的并发用 JMeter 可以做吗?
可以,jmeter 分布式,且压力机需要用最高硬件配置
thingsboard 这个鸟玩意,我还真做过,你用 jmeter 测出来不准的,建议自己用 mqtt 客户端写一个 go 工具测
mqtt 插件已经在 github 上找到了,脚本也写好了,但是要支持上万的并发,感觉几台压力机是完全不够的,这个有些难,看官网用的是 galing 这个工具
1 秒内上万并发 pub 消息用 golang 是可以的,如果 1 秒内 2000 并发 pub 消息的话,可以用 python 协程。只有 connect 比较耗资源,你用 jmeter 是做不了的,你都试试就知道了
多说一句,thingsboard 应该属于有状态应用,但是这个玩意有不少的 BUG,比如与其他消息队列应用对接,做数据流转,没有断开重连机制,若遇到其他微服务升级,不会自动重连。建议还是不要用 thingsboard 了,坑很大,填不上。还有就是你上面提及的性能指标,那是限于规则引擎简单的情况下,你在规则引擎 js 里面多写几个 if else,性能马上就下来了
Jmeter 分布式,开启多个节点,如果还是不行的话,可以通过 Jmeter JavaSampler 里面再写一个循环。计算的时候处理一下。应该可以做到的。 我们当时 压测的时候也是这么做的。