文章 2022-02-17 来自:开发者社区

我的mqtt协议和emqttd开源项目个人理解(18) - 一个客户端sub很多主题和数据,出现宕机?使用本地共享订阅解决!

EMQ中CPU是公平分配给MQTT会话,大量pub消息到一个订阅,订阅不会拿到更多cpu,最终导致消息累积,内存溢出宕机。最好的解决办法是分组订阅,把消息打散,多个客户端订阅。问:请问一下,我现在的业务就是只使用一个sub,主题是\hello\#,去订阅数万个终端消息。请问针对这个问题,如何来优化业务逻辑?可以通过增加sub的方式吗?即把数万终端分成几个小组,每小组往一个主题pub,然后再分别订....

我的mqtt协议和emqttd开源项目个人理解(18) - 一个客户端sub很多主题和数据,出现宕机?使用本地共享订阅解决!
文章 2022-02-17 来自:开发者社区

我的mqtt协议和emqttd开源项目个人理解(17) - [error] Dependency luerl is specified as a dependency but is not...

编译源码出错:===> No entry for profile default in config. ===> Verifying dependencies... ===> Compiling jwerl make[2]: Leaving directory `/home/emq2.3.10/deps/jwerl' make[1]: Leaving directory...

文章 2022-02-17 来自:开发者社区

我的mqtt协议和emqttd开源项目个人理解(16) - [error] Autocluster exception: {badmatch,undefined}

emq2.3.X会出现这个错误,怎么破?出现这个错误,emq程序无法正常启动,1883端口没有在监听。emqttd broker is starting...[ok]emqttd alarm is starting...[ok]emqttd mod supervisor is starting...[ok]emqttd bridge supervisor is starting...[ok]em....

文章 2022-02-17 来自:开发者社区

我的mqtt协议和emqttd开源项目个人理解(13) - Hook使用和连接Kafka发送消息,使用brod库

一、工作环境准备erlang kafka客户端库使用的是brod,https://github.com/klarna/brodemq使用的是v2.3.5版本,https://github.com/emqtt/emq-relxkafka的运行环境准备,http://blog.csdn.net/libaineu2004/article/details/79202408我们以插件的形式来实现,我的插件....

文章 2022-02-17 来自:开发者社区

我的mqtt协议和emqttd开源项目个人理解(14) - 使用redis插件来实现访问控制

一、工作环境准备准备好redis server,http://blog.csdn.net/libaineu2004/article/details/76267836erlang redis客户端使用开源项目,https://github.com/wooga/erediserlang连接池,https://github.com/emqtt/ecpoolemq使用的是v2.3.5版本,https:/....

文章 2022-02-17 来自:开发者社区

我的mqtt协议和emqttd开源项目个人理解(12) - Hook使用和连接Kafka发送消息,使用ekaf库

一、工作环境准备erlang kafka客户端库使用的是https://github.com/helpshift/ekafemq使用的是v2.3.5版本,https://github.com/emqtt/emq-relxkafka的运行环境准备,http://blog.csdn.net/libaineu2004/article/details/79202408我们以插件的形式来实现,我的插件路径....

文章 2022-02-17 来自:开发者社区

我的mqtt协议和emqttd开源项目个人理解(10) - 建立高可用集群,负载均衡haproxy

方案1:Nginx+Keepalived+emq+MySQL双机热备,MySQL用于数据持久化方案2(推荐):HAProxy+Keepalived+emq+MySQL双机热备方案3:HAProxy+confd+emq+etcd问:我还有一个疑问,使用了nginx或者haproxy真的能提升性能吗?那nginx或haproxy本身服务器岂不是压力山大,所有数据都要经过它转发。答:它不需要处理,仅仅....

我的mqtt协议和emqttd开源项目个人理解(10) - 建立高可用集群,负载均衡haproxy
文章 2022-02-17 来自:开发者社区

我的mqtt协议和emqttd开源项目个人理解(9) - 集群和Mnesia源码分析

学习mqtt协议和emqttd开源项目http://emqtt.com/emqttd源码版本号是v1.1.3。http://emqtt.com/downloads/1113一、先来看EMQ的文档定义:http://emqtt.com/docs/v1/cluster.htmlemqttd集群设置管理¶假设部署两台服务器s1.emqtt.io, s2.emqtt.io上部署集群:节点名 主机名(FQ....

文章 2022-02-17 来自:开发者社区

我的mqtt协议和emqttd开源项目个人理解(8) - 客户端subscribe消息的源码分析

学习mqtt协议和emqttd开源项目http://emqtt.com/emqttd源码版本号是v1.1.3。http://emqtt.com/downloads/1113源码写得比较绕,需要经过以下模块的调用,入口是emqttd_client模块,handle_info函数负责接收socket的数据:(注意:gen_server:call是同步调用,cast是异步。call对应的是handle....

文章 2022-02-17 来自:开发者社区

我的mqtt协议和emqttd开源项目个人理解(6) - 使用Wireshark分析mqtt协议

固定报头(Fixed header)可变报头(Variable header)报文有效载荷(Payload)固定报头Bit 7 6 5 4 3 2 1 0byte1 MQTT Packet type Flagsbyte2… Remaining Length报文类型类型名称 类型值 报文说明CONNECT 1 发起连接CONNACK 2 连接回执PUBLISH 3 发布消息PUBACK 4 发布回....

我的mqtt协议和emqttd开源项目个人理解(6) - 使用Wireshark分析mqtt协议

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。