问题标签 [emq]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
85 浏览

persistence - 当订阅者应用程序关闭时,emqttd 未获取同一主题中的所有消息

订阅者应用程序重新启动时仅接收最后保留的消息。

操作系统:Windows EMQ Broker 版本:2.3.10 Eclipse paho

当我在同一主题上发布 10 条消息时,在那段时间由于某种原因订阅者应用程序崩溃,在某个子应用程序重新启动后,我只得到最后一条保留消息并丢失所有其他数据,这是一个大问题。

我在 pub 和 sub 上都将 Retained 标志设置为 true ,将 clean session 标志设置为 false 并将 Qos 设置为 1。

有人可以帮忙吗?我是否缺少任何配置或 Erlang 代理的行为就像只获取最后一条保留消息。

0 投票
1 回答
97 浏览

mqtt - 从 Broker 收到消息后 MQTT Broker 中的回滚功能

从 MQTT Broker 收到消息后,我有一个情况,在处理数据期间,假设 DB 已关闭且未完成任务。在那种特殊情况下,收到的数据必须发送回经纪人,我的任务没有完成,我的意思是回滚。

如何实现这一点以及如何告诉代理在处理数据期间出现了一些异常,您需要再次发送数据。

有人可以解决这个问题吗?

0 投票
1 回答
234 浏览

mqtt - EMQX 基准测试问题

是否可以在单节点上测试 10 万用户的 WebSocket 连接测试?如果是,如何?

我想知道 EMQX 官方网站上声称的每个节点的 100 万连接测试是如何进行的。

如果 OS 本身的端口限制为 65536

0 投票
3 回答
516 浏览

python - paho-mqtt 不会给我排队的消息

使用 paho-mqtt 并尝试让它接收排队的消息。我使用的代理是 emqx 4.2.2,这是我的脚本:

我现在去向经纪人发布一条消息:

当客户端连接到代理时,它确实接收到消息,但鉴于我订阅的是 QoS 1 并且消息是使用 QoS 1 发布的,我希望如果我断开客户端与代理的​​连接,然后发布更多 QoS 1 条消息到该主题,然后使用相同的固定 client_id 将我的客户端重新连接到代理,然后我的客户端将收到在我的客户端离开时已排队的消息。好吧,这并没有发生,并且使用带有 -c 标志的 mosquitto_sub 模拟相同的功能一切都按预期工作,这让我问自己...... paho-mqtt 有问题吗?难道我做错了什么?

0 投票
1 回答
356 浏览

nginx - nginx 在 MQTTS 上进行负载平衡

我找到了一些文档,并成功地使用 nginx 为 MQTT 实现了负载平衡。

现在,我正在尝试使 mqtts 工作。我有一个域,具有功能性 SSL,并且该站点正确处理 Web 的负载平衡。

正如您所看到的 mqtt 的设置,这些设置很好用。现在,我应该添加证书。

我首先添加了这些行(在网络设置中)

但可悲的是,这就是我对服务器端知识的了解程度。

我是否需要:将证书信息复制到本地网络上的机器并告诉负载均衡器转发到这些机器上的 mqtts?

我确实注意到网络监听器中的“位置”区域有很多 proxy_header 命令,也许这里需要一些?

同样,我在这里几乎没有经验,所以我有点在黑暗中刺伤。

0 投票
2 回答
137 浏览

mqtt - 为什么我对公共 MQTT 代理的订阅只收到我自己的消息?

我正在使用 'broker.emqx.io' 的 MQTT 代理,并已为客户端订阅了主题 '/python/mqtt',这是 Github 存储库中的默认主题,其中包含 Python 中的示例客户端实现。我的订阅客户端正在接收我的发布客户端在示例代码中发布的消息。在我在修改代码的同时运行代码的时间里,显然全世界没有其他客户端向该主题发布消息。我的本地网络中的订阅者只接收从我的本地网络发布的消息,是否发生了一些神奇的事情?还是该主题没有流量?

0 投票
1 回答
199 浏览

kubernetes - Why is EMQX Persistence not working on azure kubernetes when it is working on local kubernetes?

When using kubernetes(minikube) statefulset on local machine, EMQX Rules are persisting because same pod IP is being assigned to the emqx node, for example /opt/emqx/data/mnesia/emqx@172.17.0.9. Even if I delete the pod when the new pod starts, it gets assigned the same IP as before. Everything is working as it should.

But when I'm using aks(azure kubernetes) to deploy EMQX on aks cluster using azure files, pod IP is different everytime. For example if /opt/emqx/data/mnesia/emqx@10.1.1.10 is assigned to the EMQX node, then if I try to delete the pod then /opt/emqx/data/mnesia/emqx@10.1.1.11 might be assigned to it.

so, nothing is persisting.

Local code

Azure Kubernetes code

0 投票
0 回答
109 浏览

erlang - 我们可以在 EMQ X Broker 中使用 Elixir 插件吗?

EMQ X 可以根据https://github.com/emqx/emqx-rel#build-with-elixir-plugins使用基于 Elixir 的插件进行构建。但是,它没有编译并抛出以下错误

rebar.config最新emqx-rel的不同master

0 投票
1 回答
140 浏览

mqtt - 负载平衡 MQTT 的最佳方式是集群或桥接,以及为什么

一个或多个 MQTT 代理可以桥接在一起。将 PUBLISH 消息从一个代理节点桥接转发到另一个代理节点。[1]

集群节点将共享/复制相同的主题树,但桥节点不会。

用于在集群中共享相同主题树的协议是什么?是 HTTP 吗?是缺点吗?因为 MQTT 与 HTTP 相比是一个轻量级的协议

  1. https://github.com/emqx/emqx/wiki/Bridge
0 投票
0 回答
63 浏览

emq - 无法为 Java 启用 emqx_extension_hook

开启 emqx_extension_hook 和启动 emqx 服务后,出现如下错误:

能否请你帮忙?我已将 .jar 文件(io.emqx.extension.jar 和 erlport.jar )和 .SampleHandler 放在 path = "/var/lib/emqx/extension/java/emqhook-java/bin/"

下面是我的配置文件( emqx_extension_hook.conf )