EMQ百万级MQTT消息服务(TLS压测和流量消耗)

在深入使用EMQ以及MQTT协议之后有一些心得和大伙分享一下

附上:

喵了个咪的博客:w-blog.cn EMQ官方地址:http://emqtt.com/ EMQ中文文档:http://emqtt.com/docs/v2/guide.html

1.流量消耗

我们知道在MQTT心跳的时候消耗为2字节,但是实际上测试下来60秒心跳间隔,一天花费了250KB流量,平均下来一次心跳0.17KB,要是使用了证书每天消耗有470KB左右一次心跳0.32KB左右

这貌似和所谓的最小2b的心跳大小不符合呀,随后笔者拜托了测试同事进行了抓包发现一次心跳会有三个阶段,ping->pone->ack 关于这三个阶段的消耗如下

PS : 结论貌似是这样的,笔者也是小白不太清楚具体的原因希望有大神能够解答一下

TLS证书带来的消耗

关于另外一个问题就是TLS,使用TLS当然能带来很多好处,最直接的就是安全度提高了,但是在使用之前要考虑清楚TLS带来的消耗:

  • 第一是流量上的消耗,心跳包几乎翻了倍
  • 第二就是性能上 TCP 1G内存可以维持5W的链接数,使用TLS 1G内存只能维持1.5W左右的链接数

以下是笔者压测TLS的结果

  • 12W链接 8GB内存消耗
  • 15W链接 CPU维持利用率在 100% ~ 150%
  • 25W链接 12GB内存消耗
  • 每秒链接速度 3000/S 4核心剩余20%空闲

以下是对应的页面是25W TLS链接的消耗

还有一些小问题

  • 如果EMQ重启 作为服务端虽然能够连上,但是对 topic 订阅丢失
  • 使用K8S部署 无法突破65536限制, 最大连接数被限制到65536

转载于:https://my.oschina.net/wenzhenxi/blog/1824647

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值