Logic App - 向azure服务总线发送消息并获取ACK?

时间:2017-08-19 23:44:43

标签: azureservicebus azure-logic-apps

我正在开发一个逻辑应用程序应用程序,它将XML发送到一个Azure服务总线队列,该队列将由内部部署的.NET应用程序接收。

我认为一个简单的模式是让.NET应用程序返回对单独的azure服务总线队列的确认,逻辑应用程序应用程序可以等待并选择最终分支是否一切正常或发生错误。但我发现在逻辑应用程序中设置非常困难。我玩过序列id和相关id字段,peeklock等,但似乎没有什么符合我认为的基本模式(发送消息并接收ACK)。我只是想做一些逻辑应用程序不是为了设计?缺少一些基本的东西?

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

根据您的描述,我建议您考虑使用azure功能来满足您的要求。

逻辑应用程序支持通过Azure Functions运行逻辑应用程序的自定义代码。

在azure函数中,您可以编写逻辑来检查应用程序是否已将ACK发送到另一个servicebus队列。

如果值为true,则返回false。

然后在逻辑应用程序中,您可以使用条件来检查此结果。

更多细节,您可以参考此article

这样的例子:

enter image description here

答案 1 :(得分:0)

您将发送带有唯一会话ID 的消息,然后等待该特定会话ID的消息确认。

这在blog post中有更详细的描述,但是从本质上讲,它是使用轮询技术的,这意味着如果您希望在确认消息之前等待很长时间,则需要考虑轮询消息总线的频率。 ,或者HTTP回调机制是否更合适。