比较Windows Azure 网站(Web Sites), 云服务(Cloud Services)and 虚机(Virtual Machines)

时间:2024-01-14 21:04:20

Windows Azure提供了几个部署web应用程序的方法,比如Windows Azure网站、云服务和虚拟机。你可能无法确定哪一个最适合您的需要,或者你可能清楚的概念,比如IaaS vs PaaS。本文将帮助您了解您的选择,并帮助你做出正确的选择为您的web场景。尽管所有三个选项允许您运行在Windows Azure高度可伸缩的web应用程序,有差异,可以帮助指导你的决定。

1. 对使用难易和控制方便进行比较(如图)

比较Windows Azure 网站(Web Sites), 云服务(Cloud Services)and 虚机(Virtual Machines)

1) 网站有最低的控制,但是不用关系虚机和IIS的运行状态。(PaaS)

2) 云服务控制比较多。一个云服务可以由一个前端web角色和一个或多个Worker的角色。每一层都可以独立了。例如,您可以远程桌面实例。(PaaS)

3) 虚拟可以完全控制,但是需要付出更多的精力去管理。(IaaS)

2. 功能比较

功能

网站

云服务 (web roles)

虚拟机

访问云服务(Service Bus,Storage SQL Database)

可以

可以

可以

部署多层构架(页面,控制,数据库)中的Web网站和Web 服务

可以

可以

可以

部署多层架构中的中间层

 

可以

可以

整合数据库MySQL

可以

可以

可以

支持Asp.net, Asp, Node.js, PHP, Python

可以

可以

可以

可以扩展到多个实例而不需要重新部署

可以

可以

可以2

支持 SSL

可以 3

可以

可以

整合Visual Studio

可以

可以

可以

远程调试

可以

可以

可以

使用TFS部署

可以

可以

可以

使用GIT,FTP部署

可以

 

可以

使用Web Deploy 方式部署

可以

4

可以

支持WebMatrix

可以

 

可以

共享实例部署

可以

   

多个实例共享内容和配置

可以

   

小的实例扩展到大的实例不需要重新部署

可以

   

多个部署环境 (生产 和 过渡)

 

可以

 

使用虚拟网络

 

可以

可以

远程登录

 

可以

可以

能够定义和执行启动服务任务

 

可以

可以

操作系统自动更新

可以

可以

 

1 Web 或者 worker 角色能够通过ClearDB整合MySQL服务,但是不是属于管理网站的工作流的一部分。

2 虽然虚拟能够扩展到多个实例,但是运行在这个机器上的服务必须实现一些逻辑去扩展。例外,所有机器必须配置负载均衡和在同一个地缘组(更新域UpdateDomain,容灾域 FaultDomain

3 对于网站来说,只有标准模式才能支持SSL。详情请看,Configuring an SSL certificate for a Windows Azure Web Site.

4 当Cloud Service的角色部署了一个实例,可以支持Web Deploy方式部署。然后,如果想满足SLA服务协议,一个角色就必须具有两个或者两个以上的实例,所有可以认为Cloud Service 不适合Web Deploy 部署。