2015-11-17 54 views
2

我已经尝试了几个星期了。这是一个非常简单的概念。从BizTalk收听Azure队列

我只想从本地安装的BizTalk Server 2013 R2中读取Azure云队列(不是服务总线!)的消息,然后允许BizTalk在内部网络上对该消息执行某些操作。我下面这种示例的用于创建一个端口到天青队列:

http://social.technet.microsoft.com/wiki/contents/articles/20211.biztalk-server-2013-connect-to-window-azure-blob-storage.aspx

在我的情况,这需要一个接收(它将被接收队列中的消息)。所以,我有这是一个WCF-WebHttp适配器指着领取地点:https://myappname.queue.core.windows.net/与像操作:

<Operation Name="Query" Method="Get" Url="/myqueue/messages"/> 
<Operation Name="Remove" Method="Delete" Url="/myqueue/messages"/> 

也似乎并不神奇地做任何事情,我不知道我怎么会启动从BizTalk读取对Azure队列的调用。我需要发起某种投票消息吗?我如何使用WCF-WebHttp适配器端口来做到这一点?

也许问题是:如何使编配以WCF-WebHttp接收位置开始做某事? IE浏览器。我如何让它轮询队列/我应该如何开始编排?

回答

3

WCF-WebHttp没有任何内置的轮询机制。您必须创建或模拟一个。

此时您需要为此执行一些自定义实现。有很多不同的选择,但我可能会像其中之一一样。

  1. 使用Scheduled Task Adapter到GET请求发送到队列端点和发布消息到MessageBox
  2. 创建一个Windows服务或计划任务(PowerShell的可能?),做轮询和写入任何消息BizTalk可以自动使用的东西(可能是MSMQ或文件位置)
+0

这肯定是为什么我能找到的唯一示例是PUT操作。 鉴于此答案和我一直得出这个结论的事实,我现在正在重新设计使用Azure Service Buss的基础结构。我认为我将编写的自定义轮询机制(可能选项2)将花费我尽可能多的努力,只需将我们的基础架构切换到Azure服务总线并使用SB-Messaging适配器即可。 – maplemale