使用 NodeMCU 板通过 MQTT 代理订阅多个发布者
Subscribing to multiple publishers through MQTT broker using NodeMCU board
我有几个关于这个主题的问题,所以我会 post 在这里一并提出,否则我必须单独 post 讨论不同的问题。
场景是我有 NodeMCU 板,我将使用它通过 MQTT 代理(MQTT 盒)接收来自多个发布者的多条消息。以下是我需要澄清的查询,我还没有实现,我只是在形成逻辑。可以说我将通过 MQTT 代理连续接收来自 4 个 NodeMCU 板的消息,然后将其发送到服务器进行存储,问题是
在我将它们存储到服务器之前,一个发布者的消息是否会覆盖另一个发布者的消息?
来自MQTT代理的消息,它们存储在NodeMCU板的ROM或RAM中?
MQTT 代理能否同时将来自 2 个发布者的数据发送到同一个 NodeMCU 板?
post 一团糟,很抱歉。
快速回答:
如果 2 个发布者发布同一主题,则消息将按照发布顺序发送给该主题的任何订阅者。所以发布者 1 的消息将到达,然后是发布者 2 的消息。由于消息是按顺序接收的,因此您不应丢失消息,因为它会被下一条消息打断。
到达的消息在传递时将在 RAM 中
代理只是将消息传递给订阅主题的任何客户端,客户端甚至不知道有多个发布者(MQTT 消息中没有发布者特定信息),只是它收到关于该特定主题的多条消息
我有几个关于这个主题的问题,所以我会 post 在这里一并提出,否则我必须单独 post 讨论不同的问题。 场景是我有 NodeMCU 板,我将使用它通过 MQTT 代理(MQTT 盒)接收来自多个发布者的多条消息。以下是我需要澄清的查询,我还没有实现,我只是在形成逻辑。可以说我将通过 MQTT 代理连续接收来自 4 个 NodeMCU 板的消息,然后将其发送到服务器进行存储,问题是
在我将它们存储到服务器之前,一个发布者的消息是否会覆盖另一个发布者的消息?
来自MQTT代理的消息,它们存储在NodeMCU板的ROM或RAM中?
MQTT 代理能否同时将来自 2 个发布者的数据发送到同一个 NodeMCU 板?
post 一团糟,很抱歉。
快速回答:
如果 2 个发布者发布同一主题,则消息将按照发布顺序发送给该主题的任何订阅者。所以发布者 1 的消息将到达,然后是发布者 2 的消息。由于消息是按顺序接收的,因此您不应丢失消息,因为它会被下一条消息打断。
到达的消息在传递时将在 RAM 中
代理只是将消息传递给订阅主题的任何客户端,客户端甚至不知道有多个发布者(MQTT 消息中没有发布者特定信息),只是它收到关于该特定主题的多条消息