【问题标题】:Azure ASP.NET REST API and Database deploymentAzure ASP.NET REST API 和数据库部署
【发布时间】:2021-01-21 23:32:59
【问题描述】:

我们开始了一个新项目的规划阶段,并确定了应该托管在 Azure 上的 ASP.NET REST API。由于我们都没有在 Azure(或任何其他云服务)上部署的经验,所以我有两个问题。

  1. 您是否需要为数据库和 API 提供单独的 Azure 服务,或者是否有一个组合的“包”用于原型,以后可以轻松更改?
  2. 是否有任何文档或是否有任何简单虚拟 API 和 DB 的整个部署过程的示例?在过去的几个小时里,我一直在阅读官方文档并四处搜索,但我真的很想看到一些参考资料,以确保我不会错过任何东西。

目前,我找到的最好的是thisthis。这似乎很肤浅,所以我真的希望,可能会有更多。

【问题讨论】:

    标签: asp.net azure rest deployment


    【解决方案1】:

    如果您正在寻找深入的设计和实施细节,那么我建议Azure Architecture Center 将是一个很好的起点,Microsoft Learn 上提供了数百门免费课程。

    具体有关于API designAPI implementation 的部分。来自Serverless web application 页面是:

    如果您不需要 API 管理提供的所有功能,另一种选择是使用 Functions Proxies。 Azure Functions 的此功能允许你通过创建到后端函数的路由来为多个函数应用定义单个 API 表面。函数代理还可以对 HTTP 请求和响应执行有限的转换。但是,它们没有提供与 API 管理同样丰富的基于策略的功能。

    我建议从为您的 API 使用 Azure Functions 开始(您只需为调用次数 + CPU、内存和运行时的组合付费,但每月前 1,000,000 次调用是免费的(消费计划),而不是支付 Azure 应用服务来托管你的 API 并一直运行,但只在某些时候使用。 一些可能有帮助的链接:

    this article 中有一个很好的总结,其中指出:

    对于繁重的工作量。

    • 私有(企业)API - 高级计划的 API 管理。
    • 公共 API - 高级计划的功能代理。

    适用于轻度/中度工作负载。

    • Private API -Functions Proxy 与 Premium 计划。
    • 具有消耗计划和自定义预热解决方案的公共 API -Functions 代理。

    然后,您可以从这里使用连接字符串到函数中的 Azure SQL DB 来写入 DB 或类似 Azure Managed Identity 的内容(是的,该链接适用于 Azure PostgreSQL,但 Azure SQL 的过程将大致相同)。

    在部署方面,您应该考虑使用 Azure DevOps(或 GitHub Actions):

    另一个衡量成本的有用工具是Azure Pricing Calculator

    【讨论】:

      猜你喜欢
      • 2021-12-07
      • 2014-12-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多