Windows Azure 的开源 DNA

去年年底,第二期微软云加速器在中国正式启动,17 家创业公司入选。依靠云计算的 HTML 5 专业富媒体动画平台 Mugeda(乐享云)是其中之一。微软云加速器为创业公司提供大量支持,但 Mugeda 入选后,技术团队却有些担心。

Mugeda 后台部署在三十多台 Linux 虚拟机上,所用的开发技术也都不是微软的产品,而是 PHP、Nginx、MongeDB 等海外创业公司常用的开源技术。Windows Azure 对非微软技术的支持让 Mugeda 非常担心。

事实证明这些担心是多余的,Mugeda 没有对现有架构进行大量改动就顺利向 Azure 迁移。参与迁移的技术负责人贾轩表示 Windows Azure “虽然名字里有个‘Windows’,但它对非微软技术的支持出乎意料的完善。”

打开 Windows Azure 中文官网的下载板块,你会看到多种语言的 Windows Azure SDK 以及命令行工具,支持语言不仅有微软开发社区常用的 .NET,也有 Java 以及开源社区常用的 Node.js、PHP 以及 Python。

这些 SDK 都采用 Apache 2 开源协议,并且自去年 6 月开始,每一个 SDK 的源代码都被托管在开源项目最常用的 GitHub 网站上。

看一下 Windows Azure 官网的案例研究专区你会发现,尽管 Azure 在国内目前刚刚开始公众测试,但已经有多家试用客户通过这个平台部署了各种基于开源技术开发的产品:

  • PPTV 亚洲电视网 ,底层技术来自 PPTV 现有的 PPCloud,部署了大量 Linux 虚拟机,采用 Java、Python、PHP、Perl、Shell 等技术。
  • qTestin 自动化应用测试 ,采用典型的 LAMP(Linux、Apache、MySQL 和 PHP)开源架构,目前每天处理几百万次性能分析。
  • 板报社会化阅读服务 ,直接迁移了此前在国内云平台上用 Linux、PHP、MongoDB。开发的产品,节省了 40% 运维成本。

开源技术在 Windows Azure 上不仅仅是能用,往往还能享受到与 SQL 数据库等微软自有服务相同的企业级支持。比如板报所用的 MongoDB 数据库,将数据文件保存在 Blob 存储空间、加载为 CloudDrive 云硬盘,直接获得 Azure 的企业级服务等级协议(SLA)支持以及多点备份保护。

云计算是未来的 IT 基础设施,只有最大的开放性才能避免技术迁移带来的资源浪费,帮助企业沿用自己最熟悉的技术,将开发资源投入核心业务上。

正如微软开放技术有限公司总裁 Jean Paoli 本月接受《中国电子报》采访时所说的,“Windows Azure本质上是互联网服务,通过浏览器向用户提供服务和接口,这从根本上决定了Windows Azure的开源‘DNA’”。