BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

面向服务的虚拟网格简介

| 作者 Enrique Castro-Leon 关注 0 他的粉丝 , Parviz Peiravi 关注 0 他的粉丝 , Mark Chang 关注 0 他的粉丝 , Jackson He 关注 0 他的粉丝 ,译者 马国耀 关注 1 他的粉丝 发布于 2009年8月13日. 估计阅读时间: 26 分钟 | 如何结合区块链技术,帮助企业降本增效?让我们深度了解几个成功的案例。

摘要:尽管VSG是一个新兴的业务概念,但它所使用的基础技术却可以追溯到几十年前,计算技术研究的早期。虽说如此,这些技术组合在一起却为计算机系统带来了非常重要的非功能性的能力。就像当年的Intenet一样,VSG具有从根本上改变业务模式的能力,它在商业实体之间重新插入了中间人,但却是以软件的形式代替了人类。这种模式转变的关键在于服务,以及对互操作性和重用的抽象。

前言

企业IT新纪元的契机即将到来。IT界如今的发展形势与上世纪90年代末导致.com崩盘那种山雨欲来摇摇欲坠的情况完全相反。在那个疯狂投机的年代无数的弄潮儿犹如过江之鲫。然而,多数情况下,这些投机者所提出的技术,ROI,甚至对于目标客户(如果定义了客户的话)的商业价值都截然不同。

从业务的角度看,在.com崩盘之后,经过了大规模的公司合并与阵痛过后深刻的反思,市场淘汰了大多数难以存活的想法。

并不能简单的判定实体性的企业因为有更多的“物质”基础就能“赢的竞争”。在人类第三个千年开始时的经济形势和.com运动开始时的氛围已经大不一样了,伴随新的竞争者涌现,又有多少前浪消逝于沙滩上。

一点历史

如果把虚拟化、面向服务以及网格说成是最新的,伟大的新兴技术的代名词的话,那是再好不过了。唉,可惜事与愿违。夸得再好也不过说这个三角组合是“新瓶装旧酒”罢了。比如,我们来看看虚拟化。最早的虚拟化的尝试可以追溯到50多年前的20世纪60年代,IBM在IBM360/671上进行的虚拟内存和硬件虚拟化的研究、曼切斯特大学2在Atlas计算机项目上进行的按需分页的研究以及Burroughs B50003的段内存设计等。这里仅列举了少数几个例子。如果我们把汇编程序和编译器也看作是一种虚拟的话,时间还可以往前至少推10年。

编译器让计算机程序员从使用电门开关或0/1写程序的苦役中解脱出来。编译器展现了物理计算机的一种理想的或者说成是虚拟的逻辑视图。说的具体点,由于硬件设计的限制,计算机总会存在一些架构方面的软肋(比如不能使用的内存边界,只能用于特殊用途的寄存器等)。编译器向程序员展现了统一的内存视图,使得程序员不再担心和应用程序并不相关的计算机结构的细节(比如面向寄存器还是面向堆栈的)。

同样,面向服务也是陈年佳酿。面向服务的源头可以追溯到20世纪60年代奥斯陆的挪威计算中心实验室开发的SIMULA语言。最初SIMULA用作一种仿真编程语言,但它的闪光之处仍然为通用编程语言所吸收:促进互操作性和重用,减低软件项目开发成本和时间。在Intel,Cal Tech以及Stanford,SIMULA和它的后继者被应用于VLSI的设计,它在20世纪70年代发展成为了XEROX PARC开发意义深远的Smalltalk语言的平台,其关键理念也融入了C++语言并沿用至今。

最后,网格计算的起源的就众说纷纭了。你可以说网格开始于20世纪60年代末对于联网计算的初次尝试;或者70年代初的以以太网为中心的网络标准化。在 80年代末和90年代初,将网格作为一种协作的,联邦的计算方式进行研究突飞猛进,如Wisconsin大学的Condor和NeXT Computer的Zilla这样的项目,它们旨在利用某种算法共享来最大化利用空闲的CPU计算能力(cycle harvesting)。紧随其后的是一些整合方面的尝试,如NASA的信息能源网格(Information Power Grid)。网格计算真正形成其独特的体系还要属芝加哥大学的Ian Foster与其团队作为开山鼻祖创立了这一门户。

虚拟化,面向服务和网格计算等技术在其他图书、研究书籍或商业书籍中都有详细的介绍,而且描述得非常好,这里我们就赘述他人已经做得很好的工作了。

相反,我们要探讨的是虚拟化,面向服务和网格是如何相互作用,并且从根本上改变信息技术为业务所交付的经济价值,以及在这个过程中,那些依赖信息技术开展日常业务活动的公司又是如何受其影响的。作者们相信,我们就是历史拐点的见证人。

图1不求面面俱细,力图总结那些最终演变出VSG的关键技术彼此之间的历史关系。

图1——虚拟化,面向服务以及网格的技术家谱

上层区块从20世纪60年代标准通用标记语言(SGML,Standard Generalized Markup Language)原型开始,他们是IBM的Charles Goldfarb,Edward Mosher和Raymond Lone等人开发的。超文本标记语言(HTML,Hypertext Markup Language)自SGML派生而来,后来发展成了Web和因特网的语言。万维网(World Wide Web)最初是被用来描述人和人之间的交互接口,而它的某些部分演化成了XML Web服务,它实现了机器和机器之间的互操作通信,而这种机器到机器的接口使得模块化复合的面向服务架构(SOA)应用程序成为可能,首先由大型企业内部(由内及外模型)开始,逐渐发展到横跨企业之间(企业可大可小,由外及内模型)。

中间区块跟踪了虚拟化的演变过程。虚拟化最初应用于主机应用,最后发展到基于廉价处理器的计算机上,以管理程序(hypervisor)作为硬件与操作系统之间的中间层。

下层区块跟踪了计算机硬件的发展历史,起初是50年代的单指令流单数据流(SISD)的主机计算模型。为了提高吞吐率,人们改造了特定计算机的体系结构,使之可以运行多数据流的程序(SIMD)。这些特定的计算机要求高度规则的数据结构来利用到额外的计算能力,因此它们的适用性是有限的。这些限制在 SIMD计算机中有所缓解,因为SIMD计算允许其成员计算机操作不同的数据。最初,成员计算机使用私有的高速通道连在一起,在一个房间内形成超级计算机集群。除了那些需要最高性能的应用,大部分应用都支付不起的这样的方案。到了网格计算的阶段,这种限制就完全消除了,因为在网格中,节点可以分布在不同的地理位置,甚至通过互联网连接起来。

VSG在企业中使用尚不普及。然而,在《面向服务虚拟网格的商业价值》(Intel出版社出版)这本书中,我们发现了许多公司应用的例子,只是名字不同而已。运用这项技术的公司往往比没有运用它的公司更具优势,而且,它们(使用VSG的公司)很可能拥有完全超出自身规模的经济影响力。

如果无法实行的话,对VSG的分析也就没有什么实际价值。因此,在我们建立好三个底层(技术)之间相互作用的力学框架之后,再去描述那些人们认为有用的策略和方法。通过这种方法,我们试图找到并记录那些在这一新环境下可能成功的方案。

我们默认这本书的读者已经熟悉虚拟化,面向服务和网格的基本知识,并且被他或她的组织委任来对SVG进行评估,甚至是提出采用VSG的方案,或者正在对这一流程寻求足够的洞察,以便在组织采用这些战略的时候能对人员作出有意义的指示。

在这个老树新花的环境中部署的资源被我们称为部署在VSG中。一方面这些资源被赋予了这些技术带来的特征,另一方面资源本身的技术也在不断发展,日新月异。

  • 虽然这些资源天生具有分布的,联邦的且重复的等特征,和网格中所看到的高性能计算的应用一样。但是,他们的普通特征更为明显。
  • 它们天生的面向服务的特点让它们具有高互操作性,并且在逻辑上他们和业务实体紧密对齐。
  • 虚拟性使得这些资源可以在逻辑上与运行它们的物理宿主分离,这样的分离有多种表现形式:一个强大的宿主可能支持一个逻辑实体的多个实例,而这个逻辑实体可能只是临时与宿主绑定的;出于容错,灾难恢复以及性能的考虑,实体还可以迁移到其他宿主。

VSG并没有带来特别不同的能力,毕竟他们和传统信息技术架构一样,运行在相同的机器,网络和数据中心环境里。

从需求工程学借用一个词语,VSG带来的是非功能性能力。若要将功能性和非能功能性能力做个比较的话,功能性能力的修改所改变的是系统的行为或功能,(译者注:而非功能性能力的改变是系统的QoS,安全,性能等方面),但这不能说由VSG所带来的(非功能性)改变就不重要:

  • VSG环境对处理家庭贷款或信用卡交易等仍然是非常有用的。
  • 从实用的目的出发,这些系统的性能提高是永无止尽的:如果负载使得系统变慢,总有方法来增加资源以保证响应时间,从而避免出现瓶颈。
  • 应可以通过兼容的协议将现有的原子服务组装起来产生新服务。如果这些原子服务已经存在,那么新服务几乎可以实时且自动地被组装起来。
  • 组件服务可以是内部开发,或外包出去。组件服务的规模以及粒度要比传统意义上的外包应用(如工资系统)要小的多。传统外包方式下,大公司签订一个工资系统服务可能需要数月的谈判,而在VSG环境下,引入一个外包组件从谈判到握手可能是自动的,机器驱动的过程。
  • VSG环境下创建的组件服务和复合应用自然具备互操作性。

在VSG环境下,上面所提到的服务组件可能不会设计成一个功能完备的应用系统,相反可能被设计成应用系统的基本元件。我们将使用servicelet或microservice来指代这些服务元件。

再举一个例子,软件项目的外包通常需要服务请求者和服务提供者经历一个艰苦而漫长的过程。

60年代的英特网通过去中介化(译者注:指得是有间接交易变成直接交易)的方法创造了数万亿资金的价值,从根本上消除了中间人,将生产者和消费者直接连接起来。

看上去似乎很讽刺,面向服务潜力无穷并将更加重要,而它将钟摆摇向一个相反的方向——重中介化 。只是此时的中间人不是人,而是机器,他们通过服务抽象进行相互通信。

在这个环境下,将服务商品化成为可能。服务可能最初是为某一特定组织而定制的,如今变成了可以被发现并通过标准接口实现互操作的知识产权的封装和价值单元。

随着服务市场的发展和成熟,不久的将来服务就可能像商品一样被交易,并且会有复杂的工具被开发出来,就如同期货市场一样。

在这全新的环境下,开发第一个新服务组件的早期开销将通过多实例化的方式分摊下去。重用降低了服务的单实例开销,从而减低了使用服务的业务应用的开发成本。对于服务消费者来说,这就是传统的基于SOA的应用实现带来的成本收益。将一个最初应用于内部而开发的服务市场化,也就可能为服务开发商带来额外的收入流,也就抵消了一部分开发的开支。因此,服务不再总是作为开支项出现在账簿上,相反它可能成为收入来源。

通过对服务进行显式(或隐式)SLA的定义,使得复合应用程序(用servicelets构建的)还可具备自优化的能力。

在考虑为复合应用的内部和外部接口定义SLA时,自然会考虑到其他非功能性需求,如规则遵从或者服务质量以及性能标准等。

因此,在“去中介化”(disintermediation )到“重中介化”(reintermediation)的同时,应用程序和服务也经历了分离到聚合的过程。正如上文所提到的,组成应用程序的组件粒度将比今天所看到的还要小很多。例如,工资系统通常是作为一个整体的逻辑功能外包给服务提供者(如 EDS)。在VSG环境下,公司可以对以下不同方面进行自由搭配,这些方面包括业务逻辑软件,数据,存储,存取数据的数据库以及运行应用的服务器等。

在面向服务的生态系统里开发应用要求有一个相应的市场存在,这个市场上有广泛的servicelets以及广泛的调色板可供应用程序架构师和工程师选择来完成他们特定的目标。比如,出于灾难准备的原因,可能选择处于不同位置的封装存储与服务器托管的servicelets来实现某项功能。

搭建应用所选择的服务器事实上可能是一个虚拟的实例,而不是物理服务器。服务消费者不需要关心甚至感知不到他所购买的服务器实例是虚拟的还是物理的,只要它满足了预先达成的性能和安全等SLA约定。 通用的互操作性也将会催生出某些流行的服务组件的商品市场或期货市场。

相反,servicelets也不一定是纯软件实体;某些功能也可以直接和物理世界交互:当某大学的一个学生使用课程注册系统时,注册流程可能会调用一个 servicelet向某图书提供商(如Amazon.com)购买相应的课本, Amazon.com的Web服务接口将会触发一组事件,最后的结果是课本邮寄到了学生的地址。

上述事件链可能非常复杂,这本书的真正书商可能不是Amazon.com,而是其合作的零售商。在整个事件链中, 信息按照需要进行流转,保证了每一个参与者按照合约合理结算,并且最终将课本送达到正确地点。

工业案例

由于业务应用的磋商和拆卸的过程都需要开支,所以如今的应用系统一般都会存活很久。拆卸过程也可能非常复杂 ,除了移除现有应用和设备,还要和新提供商磋商新的合同。VSG环境使得这种动态的行为更容易操作 。今天,决策者瞬间就能够收集到所需的所有数据。可以为解决特定问题或支持某短期活动很方便地创建一个新应用,从而提高业务敏捷性。

让我们看看食品行业的市场分析员的一个例子,他要使用商务智能(BI,Business Intelligence)的方法对一组特定的产品进行购买模式的研究。

他获得了一家百货连锁店的客户忠诚度数据库的使用许可权。百货连锁店乐意向第三方授权(使用他们的客户忠诚度数据库),把从商业运作中产生的知识产权转化为额外的收入流。

看看百货连锁店方面,虚拟化和面向服务降低了这种成熟的公司再利用现有知识产权(以数据和流程的方式存在) 的门槛,从而在服务市场上找到增加收入的机会。

另一方面,服务的消费者也可能会发现集成这种servicelets的方式比用几年时间来开发并磨合一个系统的方式来的更为经济。

他租用了该客户忠诚度数据库的一次性使用的实例,找到某应用服务提供者(ASP),让他编配如下动作:

  • 从客户忠诚度数据库获取一份加密的拷贝。
  • 从中国的某存储服务提供商那里购买存储服务来存放数据库(数据库中存放上一步获得的数据)。
  • 从数据库独立软件提供商(ISV)的服务机构那里购买一个星期的使用授权。数据库ISV转身又从数据中心服务提供商那里租用两台服务器来运行一星期。
  • 从商务智能(BI)ISV服务机构那里购买一星期的使用授权。
  • 给分析员所在的部门发一份账单。

分析员从他的个人终端进行数据查询,完成为期一周的调研工作。应用服务提供商,按照分析员的要求,在项目和交易完成之后,销毁所有的数据备份。这个场景中我们可以看到:

  • 所有的数据是在内存中解密的,而在此之前,数据是被加密的并且压缩的,窥伺数据的唯一的途径只能在处理器总线上附上一个编码分析器。所以,服务提供者宿主根本无法感知,也不可能窥伺到其客户所运行的应用。服务器是经过第三方认证(利用预先存在的信任链进行认证)的具有防篡改的能力。还有一个独立的安全服务提供者为广大客户进行数据中心的监控和认证,一旦某次运行的过程中敏感信息被打开,服务器被会自动关闭。如果在某数据中心提供的服务中,多次出现这种情况,那么这个数据中心的所有者可能会被吊销执照,从而无法继续向外提供服务。这样的大环境使得你可以把应用程序部署在世界上的任何位置的资源上。
  • 考虑到复合应用环境下每个参与者的需求,所有的数据传输都是加密的,并且双向认证。一般来说,总是假定交互的双方是可疑的,这样的安全检查的原则与在潜在可疑的因特网环境中进行交互没什么区别。对于回账(bill-back)和费用结算等操作,数据的私密性和安全性是格外重要的。以上场景还支持跨多个不同机构的防篡改的系统管理操作,当实验的基础设施环境完成工作下线之后,数据库所有者将得到证明以确认所有的数据备份都已经销毁。
  • 每个参与者得到与其功能匹配的受管资源的视图:宿主看到是物理资源的视图;大多数客户看到是虚拟资源的视图。实际上,物理资源和虚拟资源之间的区别也越来越模糊。

以上描述了一个高动态性,实时的,“即用即付”的基础设施使用场景。对于使用量随季节性变化很大的公司, 租用服务比部署服务器(大部分时间都是空闲的)要经济很多。

欲了解关于VSG的更多信息,请阅读由Enrique Castro-leon,Jackson He,Mark Chang和Parviz合著的《面向服务虚拟网格的商业价值》一书。

关于作者

Enrique Castro-Leon是Intel数字企业组的企业级架构师,数据中心架构师以及技术决策人。他的工作包括操作系统设计和架构,软件工程以及高性能计算,平台定义和业务开发等。他经常将新兴的技术和创新的商业模型应用于不断发展的新兴市场。他曾在多家公司,非营利组织和政府部门担任过技术和数据中心规划方面的咨询师。

他是一名IT梦想家,也曾担任过解决方案架构师,项目经理,还曾担任过技术总监,负责高级POC项目,向企业用户和Intel内部用户展示新技术的使用。他发布了40多篇文章,会议论文,技术战略管理方面甚至SOA和Web服务方面的白皮书。他的硕士和博士学位是在Purdue大学电子工程和计算机科学专业获得的。

Jackson He是Intel数字企业组的主管架构师,专攻易用性管理和企业级解决方案。他获得Hawaii大学的博士和MBA学位,拥有20多年的IT经验,从事过多种工作,如教书、编程、工程管理、数据中心维护、架构设计和企业级标准定义等。Jackson是Intel在OASIS,RosettaNet,以及分布式管理任务组的代表。从2002到2004年,他是OASIS的技术咨询组成员之一。今年来,他致力于动态IT环境下的企业基设管理,和平台能源效率的研究,他的研究课题颇为广泛,包括虚拟化,Web服务,分布式计算等。他曾在Intel技术杂志和IEEE会议上发表过20多篇论文。

Mark Chang是Intel技术销售组的主要战略者,他专攻面向服务的企业、高级客户端系统的业务和全球技术战略。Mark拥有20多年的企业经验,包括软件产品开发、数据中心现代化和虚拟化、统一消息服务部署和无线服务管理等。他参与过多个企业标准组织,定义CIM虚拟模型和相关的Web服务协议的标准。此外,Mark和系统集成以及IT外部社区有着密切的联系。他拥有Austin Texas大学的硕士学位。

Parviz Peiravi 是Intel公司的主要架构师,负责全球企业级解决方案及设计。他在Intel有11年多的工作经历,主要负责设计和驱动面向服务的开发。

1 http://en.wikipedia.org/wiki/IBM_CP-40

2 J. Fotheringham, Dynamic Storage Allocation in the Atlas Computer, Communications of the ACM Vol. 4, No. 10 (Oct. 1961), pp. 435-436.

3 http://en.wikipedia.org/wiki/Burroughs_large_systems

感谢黄璜对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家加入到InfoQ中文站用户讨论组中与我们的编辑和其他读者朋友交流。


This article is based on material found in book The Business Value of Virtual Service-Oriented Grids by Enrique Castro-leon, Jackson He, Mark Chang and Parviz Peiravi. Visit the Intel Press web site to learn more about this book: www.intel.com/intelpress/sum_grid.htm.

No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 750-4744. Requests to the Publisher for permission should be addressed to the Publisher, Intel Press, Intel Corporation, 2111 NE 25 Avenue, JF3-330, Hillsboro, OR 97124-5961. E-mail: intelpress@intel.com.

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

没看懂 by Ares fe

这个是正文还是前言?看了半天还是不知道VSG是什么

VSG,很神秘的样子,又在这里造词 by Guo Alex

什么东西一对狗食

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

2 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT