微软发布了Azure 容器应用程序,这是一项用于在云中运行无服务器容器的新服务。这似乎与容器实例服务类似,该服务也用于部署完全托管的容器。
这两种服务之间的主要区别是什么?
小智 25
这是一个很好的问题,我已经向团队询问过这个问题,因为我也不清楚。
总之:如果您要启动多个容器(例如前端/后端/数据库),Azure 容器应用程序是更好的选择,因为它附带 Dapr,它将自动重试请求并添加一些遥测数据。
如果您只需要长时间运行的作业或者不需要多个容器相互通信,则可以使用 Azure 容器实例。
Azure 容器实例
Azure 容器实例 (ACI) 按需提供 Hyper-V 隔离容器的单个 Pod。与容器应用程序相比,它可以被视为较低级别的“构建块”选项。ACI 容器不提供规模、负载平衡和证书等概念。例如,要扩展到五个容器实例,您可以创建五个不同的容器实例。Azure 容器应用程序在容器之上提供了许多特定于应用程序的概念,包括证书、修订、规模和环境。用户经常通过其他服务与 Azure 容器实例交互。例如,Azure Kubernetes 服务可以通过虚拟节点在 ACI 之上进行分层编排和扩展。如果您需要一个不那么“固执己见”的构建块,并且与 Azure 容器应用程序优化的场景不符,那么 Azure 容器实例是一个理想的选择。
Azure 容器应用程序
Azure 容器应用程序使您能够构建基于容器的无服务器微服务。容器应用程序的显着特征包括:
针对运行通用容器进行了优化,特别是针对跨容器中部署的许多微服务的应用程序。由 Kubernetes 和 Dapr、KEDA 和 Envoy 等开源技术提供支持。支持 Kubernetes 风格的应用程序和微服务,具有服务发现和流量分割等功能。通过支持基于流量的扩展以及从队列等事件源拉取(包括缩放到零)来启用事件驱动的应用程序架构。支持长时间运行的进程并可以运行后台任务。Azure 容器应用程序不提供对底层 Kubernetes API 的直接访问。如果需要访问 Kubernetes API 和控制平面,应使用 Azure Kubernetes 服务。但是,如果您想构建 Kubernetes 风格的应用程序,并且不需要直接访问所有本机 Kubernetes API 和集群管理,容器应用程序可以提供基于最佳实践的完全托管体验。出于这些原因,许多团队可能更愿意开始使用 Azure 容器应用程序构建容器微服务。
来源: https://docs.microsoft.com/en-us/azure/container-apps/compare-options
归档时间: |
|
查看次数: |
18634 次 |
最近记录: |