最近公司有基于 MQTT 协议的聊天功能的项目,原来用过 python 的 locust 对 http 的协议进行压测,但对 MQTT 进行压测该怎么重写 Locust 类,有哪位大神有实操经验,求传授
1、用 http 封装 mqtt 的 api,也就是你提到的重写类,支持,做好了可以开源一下,然后用 locust 就行 2、用 locust 模拟并发请求方法,直接用 python 调 mqtt 的 api,如果是这样,其他工具也可以做
要不要试下 https://github.com/jacexh/ultron ,如果会 golang 的话,你利用https://github.com/eclipse/paho.mqtt.golang 这个 mqtt client 实现这个 interface 即可:
https://github.com/eclipse/paho.mqtt.golang
type Attacker interface { Name() string Fire() error }
参考官方文档,里面有说明如何使用自定义协议进行测试,https://docs.locust.io/en/latest/testing-other-systems.html#sample-xml-rpc-locust-client