Azure 路由消息:主题到无服务器到多队列(可能)到无服务器到多休息

Azure 路由消息:主题到无服务器到多队列(可能)到无服务器到多休息,azure,azure-functions,azureservicebus,azure-logic-apps,azure-eventgrid,Azure,Azure Functions,Azureservicebus,Azure Logic Apps,Azure Eventgrid,抱歉,如果这是长的和/或开放式的。。。azure中有太多的选项,我正在努力选择在哪里使用哪一块,所以我希望有人能帮我指明方向 我正在尝试构建如下图所述的东西。我将消息从多租户服务总线主题(图的顶部)路由到特定于租户的REST端点(图的底部) 到目前为止,我面临的最困难的部分是要有一个函数的概念,该函数具有随时间变化的动态队列/事件触发器,但我正在寻找有关解决方案任何部分的建议 我要处理4个约束条件: 这些消息最终必须到达相应的rest端点 这些REST端点节点是动态添加和删除的,但我知道(通过

抱歉,如果这是长的和/或开放式的。。。azure中有太多的选项,我正在努力选择在哪里使用哪一块,所以我希望有人能帮我指明方向

我正在尝试构建如下图所述的东西。我将消息从多租户服务总线主题(图的顶部)路由到特定于租户的REST端点(图的底部)

到目前为止,我面临的最困难的部分是要有一个函数的概念,该函数具有随时间变化的动态队列/事件触发器,但我正在寻找有关解决方案任何部分的建议

我要处理4个约束条件:

  • 这些消息最终必须到达相应的rest端点
  • 这些REST端点节点是动态添加和删除的,但我知道(通过事件网格消息)什么时候会发生这种情况
  • 这些REST端点节点也可以随时脱机,或者长时间(天)脱机,所有消息最终都应该被传递
  • 我对F1有一个基本可行的解决方案,但我正在寻找更好的想法,但实际上我正在努力解决的是F2

    F1 目前我拥有的是:

    • 每个租户服务器1个队列,根据事件网格消息创建/删除
    • Azure函数,可根据服务总线消息内容返回队列名称
    • 一个逻辑应用程序(WIP),它将从主题订阅中删除消息,使用该函数确定目标队列名称,将webhook URI添加到消息属性,并将消息转发到该队列
    我认为F1最终会正确运行:D。。。但是f2

    F2

    这是一个棘手的部分,现在我有N个队列,随着时间的推移来来去去去。我不知道如何通过1个函数来监听所有队列,所以我想尝试在每个队列中再次推出1个函数。它将负责从队列中提取消息并发送到REST webhook URI

    但是,当rest端点关闭时,它应该暂停,而不是耗尽队列,也不知道如何有效地执行此操作,可能是另一个带有轮询的逻辑应用程序

    我正在考虑使用事件网格而不是队列,因为我认为它们通常有更多的无服务器支持,但我不确定这是否能解决问题

    感谢你的任何想法