首页 > 解决方案 > 在项目/解决方案中编写/组织 azure 函数的最佳实践

问题描述

我创建了多个天蓝色函数。有些与类似的功能相关,而另一些则不同。假设: 1. 文件移动 - TimerTrigger 2. 处理 - HttpTrigger

对于文件移动,我有 2 个功能,对于处理,我有另外 2 个功能。我在同一个项目中创建了 4 个 azure 函数。这是正确的方法吗?

  1. 我应该将 FileMovement 函数放在同一个类文件中并在不同的类文件中处理 - 同一个项目/解决方案吗?
  2. 所有天蓝色功能的单独项目?

应用程序设置值必须在所有 azure 函数之间共享。

标签: azure.net-corecoding-styleazure-functions

解决方案


不久前我在博客上写过这个。

我建议如下:

  • 对于更大的解决方案:将领域驱动设计原则应用于您的解决方案。将需要协同工作的函数(在有界上下文中,或在有界上下文中的模块)保留在一个函数应用程序中。“什么变化在一起就应该一起部署。”

  • 检查各个功能的缩放要求。如果所有函数都具有相同的缩放行为,那么它们可以保留在同一个函数应用程序中。如果某些功能需要与其他功能不同的缩放比例,请将它们放在单独的 Function App 中。

  • 就个人而言,我喜欢每个类有一个函数定义,因为这允许我nameof(FunctionClass)FunctionName属性中使用,正如我在这篇文章中所描述的那样。

  • 使用解决方案文件夹使 Function App 中的代码保持结构化。我在 GitHub 上的一个演示项目:DurableFunctions.Demo.DotNetCore


推荐阅读