用于ASP.NET MVC开发的Windows Azure或Amazon EC2?

如果要构build使用MSSQL数据库的企业ASP.NET MVC应用程序,最好使用Windows Azure还是Amazon EC2?

我没有find任何令人满意的答案。

那么两个云平台(价格,性能,整合简单性)的优点和缺点是什么?

两者都是为了稍微不同的目的 –

亚马逊是基础设施即服务,这意味着你不必购买硬件,networking设备和维护它们。 您将获得可以托pipeLinux或Windows操作系统的虚拟机,并且可以轻松地安装任何您需要的框架,Web服务器或应用程序,以用于托pipeWeb应用程序或Web服务或长时间运行的进程。 您仍然负责维护操作系统,这意味着您仍然需要应用升级补丁,防范病毒,并且完全负责确保操作系统不会崩溃。

Windows Azure是一种平台即服务 – 你基本上可以像亚马逊那样获得windows虚拟机,但是操作系统pipe理和应用程序框架也完全从你的视野中抽象出来。 它允许自动操作系统升级和维护。 这也意味着你只需加载你的应用程序,它就开始工作 – 不需要担心低级别的细节。

虽然这会减less对可以安装的内容的控制,但是由于您在维护实例时不需要太多的pipe理工作,因此可以减less操作开销。 还可以扩展和缩小,负载均衡,自动高正常运行时间,所有这些都由蔚蓝服务控制器(或结构控制器)处理。

Sql azure在这个方向上是领先一步的 – 你甚至不必考虑一个虚拟机,你只需要在云中获得一个特定大小的数据库,并且支付你使用的数据。 数据似乎是三重复制的,因此内置了非常好的可靠性。至less对于小型数据库而言,这比拥有sql server的完整实例要便宜得多。

微软还推出了一些像Windows Server vms这样的function,可以让你select像Amazon一样的亚马逊,但是我个人更喜欢现在的azure。

所以总结一下 – 对于新的asp.net mvc应用程序,在sql server后端,windows azure是一个很好的开发平台。 另一方面,如果你有一个对windows Azure不支持的遗留组件依赖的现有网站,亚马逊将是一个更好的select。 另外,亚马逊在相同规模的实例上会稍微便宜些(虽然定价结构可能会因您要承诺的承诺而有所不同)。

Roopesh很好地描述了一些差异。 让我补充一下,为你的具体情况。

由于您想使用Microsoft SQL Server,因此Azure的SQL Azure将非常适合。 此外,如果将应用程序部署到Azure Webangular色(angular色是具有特定模板的虚拟机,并且Webangular色专门运行IIS),则可以直接在同一个数据中心内使用SQL Azure数据库,而不会发生您的应用程序和数据库之间的任何带宽费用或互联网延迟。

一个解释:SQL Azure 三倍复制您的数据。 这种复制是即时的,因此在删除* FROM CUSTOMERS时请记住这一点,因为这种删除也是三重复制的。 在规划备份策略时可以考虑这一点(可以利用Azure的同步服务定期备份到Azure或本地的其他数据库)。

我们目前在我们的客户的私有云上​​托pipe我们自己的应用程序,目前我们正在将其作为研发项目迁移到Azure。

我们的产品利用MSSQL Server的免费文本searchfunction。 不幸的是,这并没有成为Azure。

我认为,与AWS相比,现在迁移到Azure会使其更难以切换到或支持任何其他平台。

虽然亚马逊从成本angular度看起来不错,但他们的免费实例只有Linux。 对于窗口成本是可比的。 亚马逊angular色基本上是虚拟机,你必须pipe理框的其余部分。 虽然现在可以在Azure上使用虚拟机angular色(如果需要的话),但我更喜欢使用Azure Webangular色,因为平台/负载平衡的其余部分都是为您提供的。

如果您订阅MSDN或成为Microsoft合作伙伴(或通过Bizspark或类似计划),则可以免费访问Azure资源:

http://www.microsoft.com/windowsazure/offers/default.aspx

SQL Azure也是Azure的一大优势 – 完全复制和pipe理。 如果你想在亚马逊上使用MSSQL,你可以安装它,但你必须自己pipe理它。

我发现SQL Azure很慢。 如果您需要高性能的数据库解决scheme,请查看其他地方。 SQL Azure似乎只适合于低stream量的网站,不做大量的数据库访问。 正如其他人已经指出,这是一个非常方便的解决scheme,因为它的易用性,但…

微软将把虚拟机angular色添加到Azure中,以便Azure将Iass选项与EC2一样。

http://www.microsoft.com/windowsazure/compute/default.aspx

Azure目前不支持具有2个或更多网卡的虚拟机