我今天使用 Azure 的最大问题是与其他操作系统的可操作性。在这里,我将 Azure 与EC2 / Rackspace实例进行比较(尽管 Azure 作为PAAS提供了比它们更多的功能,例如负载平衡、存储复制、地理部署等在一个廉价的软件包中)。
即使您认为我是BizSpark初创公司的人,我也不倾向于在SqlAzure(相当于 Sql2005)上运行我的数据库,因为我不能接受他们的定价政策,在 BizSpark 计划三年后我将不得不承担。现在他们没有 MySql 或任何其他数据库的选项。这对我来说对于中小企业来说是荒谬的。使用 EC2,我可以在另一个 Linux VM 上运行我的 MySql 实例(显然在同一个网络中。Azure 让您能够连接到他们之外的网络,但这不是一个真正的选择)
第 2次。这又与使用 *nix 机器有关。我希望我的所有缓存都由Memcached维护。对于 asp.net 4,他们甚至通过可扩展的输出缓存为我们提供了开箱即用的 memcached 支持。我之所以坚持 memcached 是因为它提供的生态系统。例如:今天我可以使用持久缓存作为附加组件来获取 memcached。这甚至让我有机会使用 memcached 存储会话数据。此外,我可以在 IIS 日志上运行 map reduce 作业。这是使用EC2 上的 cloudera 映像完成的。我不知道如何使用 Azure 做到这些。
你看,在 Amazon/Rackspace 的情况下,我可以在单个 Windows Server 2008 实例上运行我的 asp.net Web 应用程序,其余的则在 *nix 机器上运行。
我正在考虑在CouchDb上运行我的非分层数据(网络应用程序菜单项) 。使用 Azure,我得到了Azure table。但我对那台自动取款机不太满意。使用 EC2,我可以在同一个 MySql 盒子上运行它(不要在这个盒子上抓住我 :-))。
如果您准备好忘记这些问题,Azure 为您提供了一个抽象出大量繁重工作的环境。这是一件好事。扩展、负载平衡、大量非常便宜的存储、CDN、存储复制、通过Fabric Controller等对服务进行开箱即用的监控。使用 EC2/Rackspace,您必须聘请系统管理员支付 15 万美元的 PA 来做这些事情(AFAIK 亚马逊提供其中一些功能需要额外付费)。
我比较的是 azure 和 Amazon/Rackspace 实例(而不是云)。对于某些人来说,这可能看起来像苹果和橙子。但是 azure 不为您提供实例。只是带有定制产品的云......</p>