Azure 计算
什么是 Azure 计算?
Azure 计算是一种按需计算服务,用于运行基于云的应用程序。 它通过虚拟机和容器提供多核处理器和超级计算机等计算资源。 它还提供无服务器计算,无需设置或配置基础结构即可运行应用。 资源按需提供,通常可在几分钟甚至几秒内创建。 只需为使用的资源付费,并且只在使用它们时付费。
有四种用于在 Azure 中执行计算的常用技术:
- 虚拟机
- 容器
- Azure 应用服务
- 无服务器计算
什么是虚拟机?
虚拟机 (VM) 是物理计算机的软件模拟。 它们包括虚拟处理器、内存、存储和网络资源。 它们托管一个操作系统,用户可以像使用物理计算机一样安装和运行软件。 使用远程桌面客户端可以像坐在终端前面一样使用和控制虚拟机。
什么是容器?
容器是用于运行应用程序的虚拟化环境。 与虚拟机不同,它们不包含操作系统。 相反,它们包含运行应用程序所需的库和组件,并引用运行容器的主机环境的操作系统。 例如,如果有五个容器在具有特定 Linux 内核的服务器上运行,则所有五个容器都在同一内核上运行。
什么是 Azure 应用服务?
Azure 应用服务是 Azure 中的平台即服务 (PaaS) 产品/服务,为托管面向 Web 的企业级应用程序而设计。 在使用完全托管的平台执行基础结构维护的同时,可以满足严苛的性能、可伸缩性、安全性和合规性要求。
什么是无服务器计算?
无服务器计算是一个云托管执行环境,可运行代码,但是将基础托管环境完全抽象化。 创建该服务的实例以及添加代码,无需甚至不允许配置或维护基础结构。
在 Azure 中缩放 VM
可以为测试、开发或次要任务运行单个 VM,也可以将 VM 分组以提供高可用性、可伸缩性和冗余。 Azure 具有多种功能,因此无论有何运行时间需求,Azure 都能够满足这些需求。 这些功能包括:
- 可用性集
- 虚拟机规模集
- Azure Batch
Azure 中的容器
Azure 支持 Docker 容器,有多种管理方法可以用来 Azure 容器。
-
- Azure 容器实例 (ACI)
- Azure Kubernetes 服务 (AKS)
在解决方案中使用容器
容器通常用于使用微服务体系结构创建解决方案。 可在其中将解决方案拆分为各个较小的独立部分。 例如,可以将网站拆分为三个容器,一个用于托管前端,另一个用于托管后端,第三个用于存储。 这样可将应用的各个部分拆分成可以独立维护、缩放或更新的逻辑部分。
什么是微服务?
假设网站后端已达到容量,但前端和存储的容量尚不紧张。 可以单独缩放后端以提高性能,也可以使用不同的存储服务。 甚至可以替换存储容器,而不会影响应用程序的其余部分。
Web 应用类型
可以使用 Azure 应用服务托管最常见的 Web 应用样式,包括:
- Web 应用
- API 应用
- WebJobs
- 移动应用
Azure 应用服务处理你在托管 Web 应用时处理的大部分基础结构决策:部署和管理集成到平台中,终结点可受到保护,站点可快速扩展以处理高流量负载,并且内置负载均衡和流量管理器提供高可用性。 所有这些应用样式都托管在相同的基础结构中,并共享这些权益。 这使得应用服务成为托管面向 Web 应用程序的最佳选择。
Web 应用
应用服务包括对使用 ASP.NET、ASP.NET Core、Java、Ruby、Node.js、PHP 或 Python 托管 Web 应用的全面支持。 可以选择 Windows 或 Linux 作为主机操作系统。
API 应用
就像托管网站一样,可以使用自己选择的语言和框架生成基于 REST 的 Web API。 你将获得全面的 Swagger 支持,并且能够在 Azure 市场中打包和发布 API。 可以从任何基于 HTTP 的客户端使用生成的应用。
WebJobs
可以使用 WebJobs 在与 Web 应用、API 应用或移动应用相同的上下文中运行程序(.exe、Java、PHP、Python 或 Node.js)或脚本(.cmd、.bat、PowerShell 或 Bash)。 可以对其进行计划,或通过触发器运行。 这通常用于作为应用程序逻辑的一部分运行后台任务。
Azure 有两种无服务器计算实现:
- Azure Functions:可以执行几乎任何现代语言的代码
- Azure 逻辑应用:在基于 Web 的设计器中设计,可执行由 Azure 服务触发的逻辑而无需编写代码。