【问题标题】:What is the most efficient way to host a .NET Core 2.2 API with a Swagger interface and a standalone .Net Core 2.2 Web App with an Angular Front End?托管具有 Swagger 接口的 .NET Core 2.2 API 和具有 Angular 前端的独立 .Net Core 2.2 Web 应用程序的最有效方法是什么?
【发布时间】:2018-12-17 18:11:28
【问题描述】:

我希望将两个 .Net Core 2.2 应用程序发布到 Azure。 .NET Core Web 应用程序使用 Angular 作为前端,并为所有后端请求访问另一个项目 (.NET Core API)。我知道我们可以将两者都推送到单个 Azure 应用程序,但是,我在 API 上设置了 Swagger,所以我希望它也可用。您会提出哪些建议来优化成本和性能。我可以为每个项目创建两个 Azure 应用程序,但想看看是否可以在一个项目中完成。

【问题讨论】:

    标签: .net azure asp.net-core .net-core swagger


    【解决方案1】:

    不幸的是,与大多数事情一样,答案是“视情况而定”。从您的描述来看,您似乎想使用 azure 应用服务(尽管 azure 功能的消费模型对于您想做的事情可能更便宜,但如果没有更多信息就不能说)。

    假设您使用应用程序服务,那么如果您使用免费层(如果您需要一个免费数据库,如应用程序中的 MySQL),那么理论上最便宜的选择可能什么都不是,但这将您限制在我认为 60 分钟的 CPU 时间一天。如果你只是在玩这可能没问题。

    下一层是共享的,但这也会限制您使用特定数量的 CPU 时间,而且免费和共享都不能拥有自定义证书,因此这两个层一起并不是真正适用于生产系统。

    这意味着最便宜的是 B1 应用服务,它在 Linux 上以最便宜的价格提供,最好使用 azure 计算器查看最新价格。如果您这样做,那么您可以有效地添加任意数量的应用程序,因此为您的前端和另一个为您的后端将没有问题。也就是说,如果你愿意,你可以从一个应用程序中同时提供这两种服务,而且我很确定这两个 swagger/OpenApi 库(Swashbuckle 和 NSwag)都有足够的自定义功能,可以让你指定出现在你的 swagger 输出中的内容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-08-06
      • 1970-01-01
      • 1970-01-01
      • 2019-08-04
      • 1970-01-01
      • 1970-01-01
      • 2019-05-25
      相关资源
      最近更新 更多