【问题标题】:Migrate from Azure Function app to Azure Container app从 Azure Function 应用迁移到 Azure 容器应用
【发布时间】:2023-01-18 01:09:32
【问题描述】:

我有 asp.net 核心 REST API 通过输入数据与 Azure 队列交互。我在 Azure 队列服务上有一个带触发器的 Azure Function App。每当在 Azure 队列级别发生任何条目时,都会触发 Azure Function 应用程序,它会执行某些业务功能并返回响应。

看完文章:https://endjin.com/blog/2022/09/bye-bye-azure-functions-hello-azure-container-apps-part-2-migrating-from-azure-functions-to-asp-net-core,我计划将 Azure Function 应用程序迁移到具有基于 gRPC 的服务的 Azure 容器应用程序。

我试图探索一些细节 https://learn.microsoft.com/en-us/azure/container-apps/samples 但没有找到任何好的参考。

在这里,我的挑战是如何在任何条目添加到 Azure 服务队列时触发 gRPC C# 服务。

任何人都可以通过提供一些指导来帮助我吗?

【问题讨论】:

    标签: c# grpc azure-queues azure-container-apps


    【解决方案1】:

    容器应用程序构建在 KEDA 之上,因此它支持的任何 auto-scalersstorage queues 就是其中之一),您可以使用它来扩展您的应用程序,但在离开 Azure Functions 时会失去绑定。

    由于绑定不再存在,您必须直接在代码中使用 Azure 存储队列 SDK。因此,您可以使用 dequeue messages 来调用您的 gRPC 服务。

    容器应用程序对于 HTTP 触发的功能很有用,因为您可以使用 ASP.NET 等 HTTP 框架并利用它们的完整功能集,例如内置身份验证、中间件等。

    对于其他绑定,除非您有大量自定义代码需要在 limits of Azure Functions 之外运行,或者可能正在尝试将现有的非 Azure Function 应用程序转换为无服务器运行,否则您最好使用 Azure Functions,因为大多数服务级绑定代码被小心处理,减少了维护工作。

    显然,如果没有对 IBM MQActiveMQ 等辅助服务的绑定支持,那么您会希望改用容器应用程序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-17
      • 1970-01-01
      • 2023-04-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多