【问题标题】:Azure Functions - Split queue messageAzure Functions - 拆分队列消息
【发布时间】:2020-07-11 22:50:42
【问题描述】:

目前我们有一个遗留系统(.net 框架库),其中一条消息在服务总线队列中排队。有 Windows 服务,它有多个消息处理程序(用于处理消息的自定义类)。我们有一个逻辑将消息从队列中拆分到这些消息处理程序中。这些消息处理程序的拆分比例为 90% 和 10%。

我们计划将此遗留系统迁移到 azure function/durable function,在那里我们可以有一个队列触发器来处理消息。我们可以有多个 azure 函数,一个用于遗留系统中的每个消息处理程序。我们面临的挑战是如何处理将消息拆分为这些 azure 函数?

例如:Azure-Function-1 应该占用 90% 的队列消息,Azure-Function-2 应该占用 10% 的队列消息。

我的问题是 azure 是否有开箱即用的解决方案来处理这种情况下的消息?除了 Azure 函数/持久函数还有其他更好的解决方案吗?

【问题讨论】:

  • 只是大声思考,你能不能不自动将消息转发到一个主题,然后根据消息类型将它们拆分为订阅,让你的 Azure 函数监听这些订阅?
  • 我们没有任何独特的消息来区分要使用的处理程序。所以我们不能根据消息去。

标签: azure azure-functions azure-durable-functions


【解决方案1】:

这不是它的工作方式。函数的数量由事件的数量决定。因此,如果您的 Azure-Function-1 有比 Azure-function-2 更多的消息,则更改是它将有更多的函数副本在执行中。

如果您有大量消息,也许您可​​以切换到事件中心,您可以在其中确定(仅提前)分区数和吞吐量单位。

【讨论】:

    猜你喜欢
    • 2022-06-10
    • 1970-01-01
    • 1970-01-01
    • 2018-12-26
    • 1970-01-01
    • 2014-06-10
    • 1970-01-01
    • 2014-02-08
    • 2018-08-26
    相关资源
    最近更新 更多