Azure 函数与 ASP.NET 核心辅助角色服务有何不同?
这两者都涵盖相同的用例吗? 如何决定使用哪一个?
更新:
Azure函数专为 Azure 而设计。因此,在使用 Azure 或与 azure 函数集成的其他 azure 服务时,应考虑使用 azure 函数,它可以通过 azure 函数的内置功能简化代码和逻辑。但它也会对 azure 功能收费。是的,如果不使用 azure,只需使用 asp.net 核心辅助角色服务。
Azure 函数与 ASP.NET 核心辅助角色服务完全不同。
Azure函数的好处是它支持许多触发器,如azure blob trigger
/azure event hub trigger
,并与其他Azure服务集成。
借助这些内置功能,可以轻松创建适当的 Azure 函数来完成适当的任务。例如,如果将映像上传到 Azure Blob 存储,然后想要调整映像大小,则只需较少的代码即可轻松创建 Blob 触发器 Azure 函数。
辅助角色服务是任何后台处理的完美用例。如果你想操作一些Azure服务,如azure blob
/azure event hub
等,你可能会实现这一点,但需要做很多工作。
最后,根据您的用例来选择应该使用哪一个,并选择简单/有效的一个。
我认为弗雷德正在寻找的答案是,为什么有人会使用Azure函数而不是 Asp.net 核心托管服务?答案不仅仅是因为你拥有 Azure 帐户,因此一切都很容易集成。这要看情况。即流量、成本、专业知识等。 实际上,Microsoft何时使用 Azure Functions 与例如在 AKS 中托管的 Linux 容器中运行的 IHosted 服务设置了准则。我会发布链接,但这基本上是你的工作负载是否是关键任务。如果您想要最佳性能、最低成本和可靠性,在 Linux 容器中运行的托管 dotnet 核心服务将是一个很好的选择。
这是Microsoft的关键任务指南,希望对您有所帮助!
设计建议 Azure Functions:
对于简单的业务流程方案,请考虑使用 Azure Functions,这些方案没有与业务关键型系统流相同的严格业务需求。
低关键方案也可以作为单独的容器托管在 AKS 中以推动一致性,前提是在节点上并置容器时充分考虑相关性和反关联性要求。
摘自此处:
https://learn.microsoft.com/en-us/azure/architecture/framework/mission-critical/mission-critical-application-platform