我希望将现有应用程序迁移到云端。它是一个与 sql server 数据库通信的 ASP.Net 应用程序。
据我所知,我有两个选择:
Web 和辅助角色实例以及 Windows 虚拟机。
Web 和 Worker 角色实例的价格高于 Windows 虚拟机 - 我不确定这是为什么?
为什么要在 Windows 虚拟机上使用 Web 和工作角色实例?
我希望将现有应用程序迁移到云端。它是一个与 sql server 数据库通信的 ASP.Net 应用程序。
据我所知,我有两个选择:
Web 和辅助角色实例以及 Windows 虚拟机。
Web 和 Worker 角色实例的价格高于 Windows 虚拟机 - 我不确定这是为什么?
为什么要在 Windows 虚拟机上使用 Web 和工作角色实例?
虚拟机目前处于预览状态。因此,运营成本被打折。请参阅此处了解预览版与 GA(通用版)定价。您会看到,在预览期间,虚拟机运行 0.08 美元/核心/小时,而在 GA 中运行 0.115 美元/小时。这解释了与云服务 Web/工作人员角色(GA 中而不是预览版)相比成本更低。
至于在虚拟机上使用 Web/Worker 的原因,这可能已经在其他地方得到了回答(但仍然值得一个单独的问题)。
Web 和工作角色属于平台即服务 (PaaS) 保护伞,而 Azure 虚拟机(目前处于预览阶段)提供基础架构即服务 (IaaS) 解决方案。Web 和工作角色提供了一个平台,您可以直接从您的开发环境将您的 .NET 应用程序部署到该平台。Web 和工作角色自动处理 IIS 的配置、端点的打开以及跨多个实例的应用程序的负载平衡。
另一方面,虚拟机提供了一个基本的 Server 2008 系统,您可以对其进行配置以满足您的要求。如果您需要运行在 IIS 中不易部署的自定义应用程序,则最好使用 VM。但实际上,您可以在为基础架构付费时使用虚拟机做您想做的事情,另一方面是您要处理管理基础架构带来的所有配置开销。
如果您正在运行一个 Web 应用程序,我会使用 Web 角色,它可能比 VM 更昂贵,但在幕后进行了大量工作,可以抽象出开发、部署、维护和扩展 Web 的许多问题应用。此外,如果您需要具有自动故障转移功能的“高可用性”解决方案,具有两个实例的 Web 角色会附带 99.95% 的 SLA。