Doserv分析:云计算并非总是晴空万里

服务器在线11月3日报道 本周从微软专业研发人员技术博览会上获悉的消息中最令人振奋的无疑是微软公布了他们的最新Windows Azure云计算平台。目前我们还没有得到其最新的细节,但迄今为止我们了解到的讯息都是鼓舞人心的。笔者对Live Services也特别有兴趣,据称Live Services能最终为Live Mesh的内部任务执行打开一个通道。

尽管从理论上来说我对云计算平台的潜力非常看好,但我对云计算在实践中对企业软件的研发帮助有多大持怀疑态度。亚马逊在线和谷歌公司用有限的应用软件作为先头部队率先推出了他们的云服务来攻占了云计算市场。微软公司看起来也是决意要向整个独立软件开发商社区交付云版本。还有很多厂商正在跃跃欲试,我对此的回答是"谨慎"。

我们先暂时搁置对"微软是魔鬼"的争论:谁希望在这个领域与微软联姻呢?我想是Windows研发人员。Windows的独立软件开发商合作伙伴也占据相当大的数量。或许有人希望不让销售收入流入微软的帐户,但对你来说收益要大于成本和风险。

如果你认真考虑这个问题,谁会是比微软更好的云计算合作伙伴?微软已经在扩建他们的数据中心来支持全新的托管平提案。这确实是你想从云厂商处得到的。微软延伸着他们的赚钱渠道,你的应用软件会和微软的服务和应用编程接口捆绑在一起吗?对于Windows研发人员来说这已经是事实。

我认为这种云计算服务的锁定与目前现有的Windows研发人员生态系统的锁定是不同的。

假设你为你的企业开发了一款传统的Windows应用程序。某天,微软公司推出了一款关键框架的最新版本,升级后的应用编程接口破坏了你的某些代码。现有你有几个选择。一是重新编写代码,这会产生一定的成本和风险,另一个选择是什么也不做,继续在这个框架的老版本上运行你的软件。毫无疑问这些软件还能工作一段时间,但最终这个过时的框架可能再也无法在Windows的新版本下运行,甚至是打了新的服务补丁也没用。

这种兼容性问题是所有软件都无法改变的事实。重要的是他们总是能够使用的。即使你必须找来一台过时的MS-DOS计算机来运行你遗留下来的代码,这也是个选择,至少是可以应付一时只需。

但是你去哪里找到一款微软云计算平台的老版本来运行过去的Windows Azure代码呢?在云计算模式下,你买了票就要参加比赛。当微软公司说该更新你的代码来适应平台的最新版本时,你最好照他们说的去做。

想想这种事不会发生吗?我认为这很有可能,特别是随着云计算服务市场的逐渐升温,这种可能性就越来越大。假设明天一些聪明的研究生提出要升级比任何其他方法更加经济有效的云服务。你认为微软公司会无视这种需求吗?不可能,因为他们要保持自己的竞争力。即使所有的用户都必须调整他们的代码来适应这种升级,你认为微软会停下脚步吗?

云计算环境创建了一种完全崭新的研发人员合作关系。在传统的独立软件开发商合作关系中,用户为所需的工具支付费用。在云计算环境中,用户的能力直接受到厂商价格底线的影响。如果厂商决定不再提供某种服务或者服务级别,或者安全或者隐私担保,那就会很产生新的交易。我们的梦魇是我们将无法使用同样的信用卡条款来使用应用软件托管服务。每隔几个月,就会用一个薄薄的小册子以电子邮件的形式发到你的邮箱来解释新的条款,我们必须要做的就是在程序中保留这些条款。

如果有一天厂商,可能是微软或者其他公司决定你的应用软件不能在它的平台上继续运行了,这一天就是应用程序停止的那一天。如果谷歌保留终止在Android电话上远程运行应用程序的权利,那么云计算的使用周期会出现更多的中断。

因此现在的问题是:面对这样的事实,你能信任那家云计算厂商来托管你的应用程序呢?