MQTT应该使用哪个Spring Integration Channel

阿纳迪·米斯拉(Anadi Misra)

我正在尝试一个演示应用程序,其中我们通过UI发送命令,然后通过Spring集成将命令传递到设备并将命令状态返回给UI,这是我第一次使用Spring Integration,对此我有点不确定渠道的各种实现。MQTT不提供P2P直接通信,因此在流,PublishSubscribe或Direct中应使用哪个通道作为入站和出站适配器?

加里·罗素

我认为您需要了解的不仅仅是“我应该使用哪种渠道类型?”。

如果您要发送命令到设备并等待答复并将该答复发送给浏览器,则需要将本质上异步的协议转换为同步请求/答复方案。

您将需要以某种方式挂起http请求线程,直到收到来自设备的异步回复,将回复与请求相关联,并在将回复移交给它之后释放请求线程。

您可以简单地在您的计算机中进行关联,@Controller然后将回复发送到控制器中的其他方法,在控制器中进行关联,然后释放http线程。

<int-mqtt:inbound-channel-adapter channel="results" .../>
<int:channel id="results" />
<int:service-activator ref="myController" 
    method="someMethodToReceiveTheReplyAndCorrelateToRequest" />

这个答案有一种用于类似用例的技术。我们正在考虑将一个组件添加到框架中,以使这种情况更易于实现。

无论如何,都可以使用DirectChannels连接组件。

如果我完全误解了您的问题,请澄清。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Spring Integration Aggregator Throttler

Spring Integration回复Publisher

Spring Integration AMQP

Spring Integration Java DSL使用多个“ .channel()”的行为

为什么Spring Integration Channel无法正确排序我的消息?

Spring Integration入门

Spring Integration(MQTT):检索已发布的消息

Spring Integration Channel命名约定

如何使用Spring Integration实现MQTT服务器?

Spring Integration Inbound-Channel-Adapter逐行读取大文件

Mule ESB与Spring Integration

有没有一种方法可以使用Spring Integration的jdbc:oubound-channel-adapter编写BLOB?

Spring Integration jpa:outbound-channel-adapter是否提供钩子/回调来成功写入?

Spring Integration消息轮询

如何使用Spring Integration DSL从队列Channel聚合消息?

在Spring Integration下使用Paho接收二进制MQTT消息

使用注释代码示例的Spring Integration Executor Channel

来自多个s3存储桶的Spring Integration AWS s3-inbound-streaming-channel-adapter流

Spring Integration DSL等效于'int-jms:message-driven-channel-adapter'和'subscription-shared'选项

在Spring Integration中无法将Reply Channel设置为Message Header

在应用程序启动后添加spring-integration inbound-channel-adapter

Spring Integration Bean错误

Spring Integration Inbound-channel-adapter:进行一次轮询并退出

如何配置Spring Integration?

Spring Integration Java配置

Spring-Integration:使用json的int-http:outbound-channel-adapter

Spring Integration和RabbitMQ:接收消息时没有可用的output-channel或ReplyChannel标头

Spring Integration FileReadingMessageSource使用UseWatchService

Spring Integration Feed Inbound Channel Adapter 到 DB 和 Kafka