检测 Azure 应用服务
Azure 应用服务是一项基于 HTTP 的服务,用于托管 Web 应用程序、REST API 和移动后端 。 可以使用自己偏好的编程语言或框架进行开发。 在基于 Windows 和 Linux 的环境中,应用程序都可以轻松地运行和缩放。
内置自动缩放支持
Azure 应用服务中融入了纵向扩展/缩减或横向扩展/缩减的功能。 根据 Web 应用的使用情况,可以通过增加/减少托管 Web 应用的基础计算机的资源来对应用进行纵向扩展/缩减。 资源包括核心数或可用的 RAM 数。 通过横向扩展/缩减可增加运行 Web 应用的计算机实例数。
容器支持
使用 Azure 应用服务,可以在 Windows 和 Linux 上部署并运行容器化 Web 应用。 可以从专用 Azure 容器注册表或 Docker Hub 拉取容器映像。 Azure 应用服务还支持多容器应用、Windows 容器和用于协调容器实例的 Docker Compose。
持续集成/部署支持
Azure 门户提供与开发计算机上 Azure DevOps 服务、GitHub、Bitbucket、FTP 或本地 Git 存储库的现成持续集成和部署。 将 Web 应用与上述任何源连接即可,应用服务通过将代码和将来对代码的任何更改自动同步到 Web 应用来完成其余操作。 也支持使用 Azure 容器注册表或 Docker Hub 对容器化 Web 应用进行持续集成和部署。
部署槽位
部署 Web 应用时,如果在标准应用服务计划层或更高层级中运行,则可以使用单独的部署槽而不是默认的生产槽。 部署槽是具有自身主机名的实时应用。 两个部署槽(包括生产槽)之间的应用内容与配置元素可以交换。
Linux 上的应用服务
应用服务也可以在 Linux 上为支持的应用堆栈本地托管 Web 应用。 它还可以运行自定义 Linux 容器(也称为用于容器的 Web 应用)。 Linux 上的应用服务支持许多特定于语言的内置映像。 只需部署代码。 支持的语言和框架包括:Node.js、Java (JRE 8 & JRE 11)、PHP、Python、.NET 和 Ruby。 如果内置映像中不支持应用程序所需的运行时,则可以使用自定义容器部署运行时。
语言及其支持的版本会定期更新。 在 Cloud Shell 中,可以使用以下命令来检索当前列表。
az webapp list-runtimes --os-type linux
限制
Linux 上的 Azure 应用服务存在一些限制:
- 共享定价层不支持 Linux 上的应用服务。
- Azure 门户仅显示当前可用于 Linux 应用的功能。 功能启用后,它们在门户上被激活。
- 部署到内置映像时,代码和内容将被分配一个 Web 内容存储卷,由 Azure 存储提供支持。 与容器文件系统的延迟相比,此卷的磁盘延迟更高,并且变化更大。 自定义容器选项将文件放在容器文件系统而非内容卷中,因此可能更适用于需要频繁以只读方式访问内容文件的应用。