在云上直接运行应用软件,消除基础架构问题
几家云服务提供商(包括微软和谷歌)预测,应用软件开发环境会直接转移到云上,绕过传统的服务器/操作系统/存储平台。虽然云计算的黄金时代还未到来,但微软的Azure云计算操作系统已经开始充分利用现有.Net开发人员拥有的技能,让他们无须担心在什么操作系统或什么硬件上运行,即可编写代码、测试及部署应用软件。虽然《InfoWorld》测试中心测试Azure后觉得其架构设计精良,但仍然得出了负面结论:预言Azure会成为一项重要的云服务还为时过早。
谷歌的应用引擎(App Engine)要简洁得多,目前也只有测试版,不过比Azure要略显成熟,它面向一个极小的用户群:Python开发人员。应用引擎号称是具有Web功能的Python,又有着丰富的互联网连接和性能自动扩展功能;对大多数开发人员来说,接受这个工具比较容易。
软件工程顾问Denny Bollay曾比较了亚马逊的EC2和谷歌的应用引擎。"就其本身而言,EC2不错,但有人得充当系统管理员的角色,软件工程师可不想处理这种事。Google的应用引擎似乎在尝试首次成为简化的云应用平台环境,表现不错,但存在成本预测和厂商锁定等问题。我其实寻求的是,集亚马逊的非专有云与谷歌的云编译器(带BigTable数据库)于一体的东西。我还希望看到混合型的数据提供商,能够提供天气、股票、新闻之类的实时数据,我可以在应用引擎或类似平台上动态、实时地处理这些数据。这其实就是'云的催化'(cloud-seeding)。"
虽然微软的Azure支持开放的互联网应用软件标准,比如"代表性状态传输"(REST)以及异步Javascript和XML(AJAX),但谷歌的App Engine借助实际的FOSS应用引擎组件,培育出了一个新兴的开源社区。许多这些开源软件是谷歌提供的Gaeutilities的变种,提供了简化应用引擎开发的各种计算类窗口组件。像Nuages、cpedialog和KGPL等其他开源软件是完全成熟的互联网应用软件,拿来就可以运行,也可以用来二次开发成自己的应用软件。