21、云计算的规模、复用与Windows Azure平台解析
2026/5/16 23:19:00 网站建设 项目流程

云计算的规模、复用与Windows Azure平台解析

1. Web 2.0与SOA的融合

Tim O’Reilly提出了“Web 2.0”这个术语,用来描述快速增长的基于Web的应用程序集合。隐藏复杂性、复用以及松散耦合服务的概念,明显暗示了将Web 2.0和面向服务的架构(SOA)的技术与原则相结合的潜力。

随着世界向服务互联网迁移,人、机器和商品将通过网络基础设施获取服务。可用服务的多样性需要一个基于云计算的复杂服务基础设施,包括将需求和供应聚集在一起的服务交付平台。服务互联网的构建模块包括SOA、Web 2.0,以及新颖的商业模式和基于系统与社区的创新方法。Gartner分析师等将其称为“高级SOA”“SOA 2.0”或事件驱动的SOA。其理念是将事件驱动计算架构的智能和主动性与SOA中的组织能力相结合。在事件驱动的SOA出现之前,典型的SOA平台通过预定义的业务流程集中编排服务,假定业务流程中已经定义了应该触发的内容,但这种旧方法没有考虑到跨特定业务流程或在特定业务流程之外发生的事件。

云计算的可扩展性和代码复用是两大显著优势,它们提高了(物理)硬件的利用率,并便于使用经过测试和调试的代码块,无论这些代码块位于何处,同时有更好的工具确保接口点不会中断。SOA和SOA 2.0是促进大规模代码复用的技术,尤其适用于云计算。

下面用表格总结Web 2.0与SOA融合的相关信息:
| 相关概念 | 描述 |
| ---- | ---- |
| Web 2.0 | 快速增长的基于Web的应用程序集合 |
| SOA | 面向服务的架构,强调服务的复用和松散耦合 |
| 高级SOA(SOA 2.0、事件驱动的SOA) | 结合事件驱动计算架构与SOA组织能力 |
| 云计算优势 | 可扩展性和代码复用,提高硬件利用率 |

2. Windows Azure的发展历程
2.1 微软的“未选择之路”

在1991年,Jim Allchin宣布了微软的对象文件存储(OFS)计划,这是一个面向对象的数据库,旨在方便按内容搜索文档和其他结构化数据,无论其位于何处,并计划在1993年发布。它部分源于基于Allchin 1983年在佐治亚理工学院的博士论文的分布式面向对象操作系统。然而,到2002年,“Windows仍然没有采用最初为Windows NT和Cairo计划的许多功能,包括其对象文件系统(OFS)”。尽管Cairo的一些功能以Windows NT 4.0的形式推出,但它构建下一代操作系统以实现比尔·盖茨在1994年提出的“信息触手可及”愿景的使命,遗憾地从未实现。

未选择Cairo之路的原因很简单,当时的基础设施和技术还不成熟。自1965年摩尔定律提出以来,芯片上的晶体管数量大约每两年翻一番,这一预测在过去40多年里一直成立。如今,计算机的性能至少是当时的128倍,互联网的平均连接速度至少提高了25倍,谷歌为每个免费用户提供超过7GB的托管网络存储(付费用户为25GB),并能在瞬间处理复杂搜索。

2.2 Windows的困境与Linux的崛起

Windows的内核积累了过多的负担,变得过于复杂,可扩展性成为一个严重问题。Windows XP于2001年10月25日发布,直到大约八年后才被Windows 7取代。而微软原本期望取代Windows XP的Vista于2007年1月31日发布,但以失败告终,被公认为是一个充满漏洞、占用大量资源的失败产品,许多企业从未采用它。与此同时,Linux和开源软件蓬勃发展,对微软在操作系统和桌面领域的长期统治地位构成了重大威胁。

下面用mermaid流程图展示Windows发展历程中的关键事件:

graph LR A[1991年:宣布OFS计划] --> B[1993年:计划发布OFS] B --> C[2001年:发布Windows XP] C --> D[2007年:发布Vista(失败)] D --> E[约2009年:Windows 7取代Windows XP]
2.3 从Midori到Windows Azure

史蒂夫·鲍尔默意识到需要采取激进措施,他选择了资深微软员工埃里克·鲁德(Eric Rudder)。鲁德的初始任务是“孵化”来自微软研究院的“奇点”(Singularity)项目,并将其转变为代号为Midori的项目。Midori这个名字有多重含义,它是日语中“绿色”的意思,也是动漫和漫画系列《舞-HiME》和《舞-乙HiME》中的角色名,同时还是游戏《吉他英雄III:摇滚传奇》中的角色名,这也是对吉姆·奥尔金(Jim Allchin)的一种致敬。

Midori最终演变成了新的、可扩展且可销售的云计算产品Windows Azure,这是一个摆脱了微软Windows积累负担的平台。鲁德说服了著名的Lotus Notes开发者、现任微软首席软件架构师雷·奥齐(Ray Ozzie)来牵头Windows Azure项目。

3. Windows Azure的特性与优势
3.1 Windows Azure简介

Windows Azure是一个云服务操作系统,作为Azure服务平台的开发、服务托管和服务管理环境,通过微软的数据中心为开发者提供按需计算和存储,以在互联网上托管、扩展和管理Web应用程序。它与其他托管服务(如亚马逊的服务)竞争,其名称可能源自中国北京香山公园北门外侧的碧云寺(The Temple of Azure Clouds),该寺庙建于14世纪(可能是1331年)的元朝,并于1748年扩建。

3.2 Windows Azure的功能

Windows Azure是一个软件与服务平台,是云中的操作系统,提供托管、管理和可扩展存储服务,支持简单的二进制大对象(blobs)、表(tables)和队列(queues),以及用于云服务供应和地理分布的管理基础设施,还是Azure服务层的开发平台。

雷·奥齐和微软都对Windows Azure寄予厚望。奥齐认为Azure是重塑微软未来业务的机会,它将改变微软生产软件和获取产品报酬的方式。

3.3 微软的秘密数据中心

据《福布斯》报道,微软在芝加哥郊外展示了其云数据中心。这个707,000平方英尺的建筑在满负荷运行时,将容纳162个密封货柜,每个货柜最多可容纳2,500台计算机服务器,此外还有数千台服务器安装在传统机架中,成本达5亿美元。所有计算机将运行单一操作系统,最终将使大公司能够在这个和其他微软数据中心运行电子邮件等应用程序并存储数据。其理念是降低数据处理中的劳动力、硬件和能源成本,并使经常移动的员工能够访问文件,支持者承诺成本可降低30%至90%。在芝加哥数据中心,仅三名微软员工和几名承包商就可以管理超过400,000台服务器,为超过6.7亿个电子邮件和即时通讯账户提供服务,消耗60兆瓦的电力。

微软遵循“自己吃自己的狗粮”原则,最初将使用这个数据中心运行其250项业务,包括必应搜索服务和Xbox Live游戏平台。其真正目标是说服像可口可乐、富士通和皮特尼·鲍斯等大公司将数据交给这些超级计算机,并信任Azure进行管理。微软希望通过说服开发者相信使用微软开发工具可以“以一种方式为任何地方编写代码:云、服务器、桌面和移动设备”来区别于众多竞争对手。

微软预计企业不会一开始就全面采用Azure。企业将从一些组件开始,如将部分电子邮件或很少使用的数据交给微软管理。随着信任的建立,Azure的规模和复杂性将不断增长。

下面用表格总结Windows Azure的相关信息:
| 相关方面 | 描述 |
| ---- | ---- |
| 定义 | 云服务操作系统,Azure服务平台的开发、托管和管理环境 |
| 功能 | 提供托管、管理、可扩展存储服务,支持blobs、tables、queues等 |
| 数据中心 | 芝加哥郊外数据中心规模大、成本高,可降低成本 |
| 目标 | 吸引企业客户,重塑微软业务模式 |

4. Windows Azure的开放性与开发支持
4.1 开放平台特性

有趣的是,Windows Azure是一个开放平台,它支持微软和非微软的语言及开发环境。开发者可以利用现有的Microsoft Visual Studio 2008技能来构建Windows Azure上的应用程序和服务。它既不是网格计算,也不是打包软件或标准托管服务,而是一个集成的开发、服务托管和管理环境,由微软数据中心维护。该环境包含强大而高效的计算和简单存储核心功能,并支持丰富多样的开发工具和协议。

Network World的Jon Brodkin引用微软平台战略组高级总监Tim O’Brien的话说,微软的Windows Azure和亚马逊的弹性计算云(Elastic Compute Cloud)目前解决的是两个不同的云计算技术问题,但未来注定会相互模仿。

以下是Windows Azure与亚马逊弹性计算云的对比表格:
| 对比项 | Windows Azure | 亚马逊弹性计算云 |
| ---- | ---- | ---- |
| 平台开放性 | 支持微软和非微软语言及环境 | 有自身的开发体系 |
| 主要功能 | 提供托管、管理、存储等服务 | 提供弹性计算资源 |
| 竞争关系 | 与亚马逊服务竞争 | 与Windows Azure竞争 |

4.2 对PHP的支持

许多现有应用程序是基于LAMP平台(Linux、Apache、MySQL和PHP)构建的。虽然微软希望开发者使用其.NET平台和开发工具,但它也认识到将Azure限制在.NET和专有工具上会限制其使用并减缓其增长。

因此,微软提供了Windows Azure SDK for PHP,它通过将Windows Azure提供的REST/XML接口抽象为简单的PHP API,让开发者可以访问Windows Azure的存储、计算和管理接口。下面是使用Windows Azure SDK for PHP的部署场景说明:
- 任何可通过互联网访问的服务器都可以与Windows Azure通信,包括托管PHP应用程序的服务器。
- 使用Windows Azure SDK for PHP构建的应用程序,无论托管在Windows Azure平台上还是本地Web服务器上,都可以访问Windows Azure的功能。

以下是mermaid流程图展示使用Windows Azure SDK for PHP的应用程序访问情况:

graph LR A[本地Web服务器上的PHP应用] --> B[访问Windows Azure功能] C[Windows Azure平台上的PHP应用] --> B
5. Windows Azure的部署与近期增强
5.1 部署场景

如前文所述,任何可通过互联网访问的服务器都能与Windows Azure通信。对于使用Windows Azure SDK for PHP构建的应用程序,其部署灵活性较高,既可以部署在Windows Azure平台上,也可以部署在本地Web服务器上,且都能访问Windows Azure的特性。

5.2 近期增强功能

Windows Azure现在已经更新到.NET Framework 4.0,并且有了针对Visual Studio的新工具和更新的SDK。这些工具得到了很大改进,具体如下:
-状态查看与数据访问:开发者可以在Visual Studio集成开发环境(IDE)中查看Azure托管服务的状态,并对Azure数据进行只读访问。
-调试功能增强:借助IntelliTrace功能,调试Azure应用程序变得更加容易。该功能会保留可配置的应用程序状态日志,方便开发者后续追踪错误。
-部署流程简化:现在可以直接从IDE进行部署,而无需通过Azure门户,使部署过程更加高效。

Azure数据库服务SQL Azure也进行了更新,现在支持空间数据类型,数据库容量最大可达50GB。此外,还有一个新的Azure数据同步服务预览版,用于控制跨多个数据中心的数据同步,以及一个用于Azure上SQL Server的Web管理器。

下面用列表总结近期增强功能:
1..NET Framework更新:更新到4.0版本。
2.Visual Studio工具改进:可查看服务状态、访问数据,调试更方便,部署更简单。
3.SQL Azure更新:支持空间数据类型,数据库容量增大。
4.新服务预览:Azure数据同步服务预览版和SQL Server Web管理器。

综上所述,Windows Azure在云计算领域展现出了强大的实力和发展潜力。它融合了多种先进技术,具有开放的平台特性和丰富的功能,并且不断进行更新和改进。随着企业对云计算需求的不断增长,Windows Azure有望在市场中占据更重要的地位,为企业和开发者带来更多的机遇和价值。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询