什么时候使用Azure App Service?
分类: Azure入门 ◆ 标签: #Azure #基础 #Azure入门 #入门 ◆ 发布于: 2023-06-15 14:10:52

我们前面学习了如何根据自己的业务需求是否选择Azure
虚拟机,Azure
虚拟机最大的好处就是用户基本是可以全权负责自己的各种资产,以及无需购置任何硬件设备,网络资源等等,但是坏处就是用户需要自己负责各种软件的更新和维护。
我们这一节来学习如何决定是否需要使用Azure App Service
。
Azure App Service
作为Azure
提供的计算服务的一种,向用户提供如下的应用场景支持:
- 托管
Web
应用。 - 通过
Web job
提供后台作业。 - 托管移动应用的后端。
- 直接支持
rest api
,或者通过APIM
来支持各种rest api
。
当前Azure App Service
几乎支持各种主流或者非主流的编程语言,同时后台架构上也支持基于Windows
的IIS
以及基于Linux
的nginx
,还支持容器的部署。用户无需管理基础结构,提供自动缩放和高可用性。支持从 GitHub、Azure DevOps 或任何 Git 存储库进行自动部署,以支持连续部署模型。另外需要注意的是Azure App Service
是平台即服务的一种(PaaS
), 使得用户只需要重点关注自己的应用逻辑,维护,运维交由Azure
来自动完成。
Azure App Service
的成本说明
Azure App Service
作为计算服务的一种,同样也是出租资源为主的服务,用户按需付费。不过App Service
根据用户选择的App Service Plan
来规划实际上能使用到的资源,当然也会根据该Plan
来付费。App Service Plan
决定了会为用户投入多少硬件资源,确定是专用硬件,还是共享硬件,会为用户保留多少的内存量等等。
提示
一个App Service Plan
下可以创建多个App Service
应用,同一个App Service Plan
下的应用共享该Plan
规定的资源。
App Service
支持的应用类型
App Service
支持托管目前市面上最为常见的一些服务类型,包括:
Web
应用API
应用Web
后台任务- 移动应用
同时App Service
平台为用户处理大多数的基础架构问题:
- 集成部署和管理到平台内。
- 提供机制保护用户可以访问的终结点(
EndPoint
) - 提供缩放功能(甚至是自动缩放)快速的扩展站点用于处理高流量高负载。
- 内置负载均衡和
Traffic Manager
提供高可用性。
上述所有的这些特性都托管在相同的基础结构中。这些特性使得App Service
非常适合托管Web
应用。
Web
应用
应用服务包括对使用 ASP.NET、ASP.NET Core、Java、Ruby、Node.js、PHP 或 Python 托管 Web 应用的全面支持。 你可以选择 Windows 或 Linux 作为主机操作系统。
API
应用
就像托管网站一样,可以使用自己选择的语言和框架生成基于 REST 的 Web API。 你将获得全面的 Swagger 支持,并且能够在 Azure 市场中打包和发布 API。 可以从任何基于 HTTP- 或 HTTPS 的客户端使用生成的应用。
Web
后台任务
你可以使用 Web 作业功能,在与 Web 应用、API 应用或移动设备相同的上下文中运行程序(.exe、Java、PHP、Python 或 Node.js)或脚本(.cmd、.bat、PowerShell 或 Bash)。 可以对其进行计划,也可通过触发器运行。 Web 作业通常用于作为应用程序逻辑的一部分运行后台任务。
移动应用
使用应用服务的移动应用功能来快速生成适用于 iOS 和 Android 应用的后端。 只需在 Azure 门户中单击几次,便可以:
将移动应用数据存储在基于云的 SQL 数据库中。
针对常见的社交提供程序对客户进行身份验证,如 MSA、Google、Twitter 和 Facebook。
发送推送通知。
在 C# 或 Node.js 中执行自定义后端逻辑。
在移动应用端,提供了对本机 iOS 和 Android、Xamarin 以及 React 本机应用的 SDK 支持。