快捷搜索:

拥抱面向遗留领域的 SOA

面向办事的体系布局(SOA)是存在光阴已跨越 20 年但不停未获得广泛利用的技巧之一。但因为 Web 办事的呈现以及随后被广泛回收,SOA 终于迎来了自己的“春天”。就开拓体系布局方面而言,SOA 是将来的一个成长趋势。SOA 将数据和信息作为办事公开的模型使其成为了一个异常强大年夜的观点,与当前的利用法度榜样构建块典型截然不合。当与广受追捧的遍及谋略(ubiquitous computing) 或效用谋略(utility computing) 模型(在此模型中,可以像在手电筒中添置和拆卸电池一样添加或删除处置惩罚容量)结合应用时,SOA 可供给伟大年夜的大年夜型企业谋略潜能。

SOA 中一个正在徐徐受到广泛关注的领域是遗留利用法度榜样的生命周期增长。本文阐清楚明了一些很有赞助的措施,以便经由过程 SOA 从遗留利用法度榜样和大年夜型机利用法度榜样得到更大年夜的投资回报(ROI)。大年夜型机技巧是一项异常成熟的技巧,在本文中,您将懂得各类措施,以经由过程为这些大年夜型机利用法度榜样供给 SOA 支持来延长其生命周期,从而便于信息技巧(IT)组织继承使用大年夜型机投资。

向面向办事的天下进发

SOA 的基础思惟是将企业或组织封装在办事 组成的构造中,此中从数据到逻辑和营业功能都成为了某种类型的办事。

例如,可以应用一个采取以下要领公开功能的办事:传入一个邮政编码后,办事将返回关联的地区名称。只管这并不分外繁杂,但更为繁杂的办事可能会涉及多个后端数据源、营业流程等等。

这些事务间的粘合剂主如果 Web 办事,Web 办事平日在超文本传输协议(HTTP)的根基上应用简单工具造访协议(SOAP)。我之以是用“主要”一词,是由于还可以经由过程其他要领连接到应用 IBM WebSphere® MQ 等技巧的 SOA 总线。

大年夜型机是否已成为历史?

大年夜部分企业级组织都拥有大年夜型机。这些大年夜型机要么用于数据中间,要么仍旧在履行核心的营业关键型功能。而且不难发明,这些大年夜型机内利用的根基技巧的存在光阴均已跨越了 15 年。

COBOL 便是此中之一,今朝仍是企业大年夜型机情况日常操作中很紧张的一部分。事实上,Gartner Group 于 1999 年指出,仍旧存在跨越 2000 亿行 COBOL 代码。来自 Gartner 的最新消息注解,从那时起,COBOL 营业利用法度榜样的数量并未削减。TSG Inc. 的总裁 Bill Ulrich 指出,新 COBOL 代码的数量以每年 5 百万行的速率递增,与 15 年前比拟,IBM 的大年夜型机奇迹部贩卖的成套产品也多了很多。显然,大年夜型机尚未成为历史。因为在以前 20 年到 25 年间在大年夜型机和遗留系统方面进行了这么多投资,将其整个抛开,应用更为商品化的平台进行调换,这种做法并不必然合理。

懂得面临的寻衅

IT 组织在大年夜型机领域面临的寻衅是繁杂的、多方面的。首先,这些遗留平台上的很多利用法度榜样都是多年前编写的,最初的开拓职员已无从探求。其次,利用法度榜样平日异常繁杂,也异常关键,自然使得很多组织在使其退役或移植到中型平台方面都认为异常首要。

这个寻衅是异常关键的。当将新的利用法度榜样和功能添加到核心大年夜型机之外的其他平台体系布局时,可能会给 IT 组织内部带来反面谐的身分;此类其他平台包括 Microsoft® .NET® 或 Java™ 2 Platform, Enterprise Edition(J2EE)以及基于 Java Platform, Enterprise Edition(Java EE)的各类平台等。此类设计平日要求具有繁杂的互操作机制,以将大年夜型机连接到中型平台,而这会导致布局化的企业体系布局变得“分崩离析”。

例如,WebSphere Studio Enterprise Developer 等 IBM 产品容许开拓职员或设计职员经由过程拖入遗留大年夜型机情况公开的办事来设计其利用法度榜样。此设计成果的运行时视图将供给办事总线构造(即 ESB),此中包括总线本身、代理以及中心的消息通报层。

此外,经由过程混和应用 IBM WebSphere Host Access Transformation Services(HATS)、SOAP for Customer Information Control System(CICS®)以致 WebSphere Information Integrator 等 IBM 技巧,可以将大年夜型机的利用法度榜样适配器和接口公开给其他也连接到共用 ESB 的任何工具(以致是 Microsoft .NET 利用法度榜样)。

这样,所开拓的新利用法度榜样就可以直接调用已经存在的办事,Java 开拓职员就不必要知道所哀求的办事驻留在大年夜型机平台上。这是完全透明的。对付有些细节,这可能有些夸诞,但不要误会——假如斟酌到大年夜型机的繁杂性、资源以及状态,应用这些对象为遗留利用法度榜样供给“新生”切实着实相称简单。

拖放功能

您可能已经应用过集成开拓情况(Integrated Development Environment,IDE)的拖放功能,如 IBM Rational® Application Developer for WebSphere Software 中的此类功能。假如是这样,您可能已经留意到开拓职员(或营业阐发职员)在 IDE 中拖动组件来构建利用法度榜样的基础内容的方便性。

对付支持 SOA 的情况,也供给了这样的功能。可以拖动响应的办事(位于目录或办事列表中),然后将此办事连接到其他利用法度榜样流。随后,经由过程手动编码或应用 IDE 对象的“所见即所得”功能,可以将这些办事放入从目录列表中拖出的事情流中,然后将其连接到端到端营业流程中。

示例:面向 Internet 的门户利用法度榜样

图 2. 应用 ESB 缓存扩展大年夜型机的可伸缩性

图片看不清楚?请点击这里查看原图(大年夜图)。

策略:经由过程 ESB 缓存数据

此策略的事情要领是这样的:可以经由过程 ESB 使某些数据(静态数据或变更不频繁的数据)变为持久性数据或可缓存数据。连接到 ESB 办事层的支持 SOA 的利用法度榜样(如门户)可以随后以所需的机能进行事务处置惩罚,而不会使大年夜型机后端崩溃。

例如,假定大年夜型机上驻留了一个客户记录数据库。在理论上,此数据库将在 ESB 层进行缓存,从而不必每次直接从大年夜型机利用法度榜样获取频繁造访的常用信息或数据。可以经由过程 push-update 机制(大年夜型机利用法度榜样中进行了更新时,变动细节将 push 到 ESB 层)或将缓存设置为在定义的时段后过时来节制同步。

或者,可以对基于门户的利用法度榜样(以及创建的后续办事事情流)进行特殊设计,以便客户首次登录到门户时,将经由过程异步后台哀求(pre-fetch)从大年夜型机利用法度榜样公开的办事检索客户的信息,然后在用户会话时代将此信息缓存在 ESB 上。这种设置可削减大年夜型机上的实时哀求负载。

劳绩成果

这种类型的设计的实际好处在于,能以特定的要领公开驻留在大年夜型机上的遗留营业功能,从而让利用法度榜样架构师和设计者能够重用已存在的利用法度榜样功能,而不必自己从头进行开拓。这样做可以节省大年夜量的资源,而且新的利用法度榜样或功能也可以更快地投入应用。以银行和金融机构为例,此类机构都具有宏大年夜的运行其核心营业的大年夜型机情况。假如让这些大年夜型机直接退役并调换为新的移植利用法度榜样,资源将异常高,而且风险也很大年夜。

您可能会问,经由过程进行 SOA 包装和封装遗留利用法度榜样,我们是不是只是推迟了一定呈现的环境呢?我们将来是不是仍旧还要进行利用法度榜样移植?我的谜底是“是,也不是”,您是在延迟变动,但将以更为布局化的要领对变动进行治理。当然,跟着光阴的流逝,大年夜型机利用法度榜样将必要进行移植,但经由过程为这些大年夜型机利用法度榜样供给 SOA 支持,我们供给了将其核心办事功能映射出去的固有布局,以便在将来的移植和从新开拓事情中进行实现。

请记着,移植大年夜型机利用法度榜样的风险和资源不仅限于所移植的利用法度榜样。与之经由过程接口连接的外部利用法度榜样也必要进行改动和回归测试。然而,经由过程在大年夜型机上为其利用法度榜样供给 SOA 支持,可以赞助削减将来进行移植的资源和影响,由于任何经由过程接口连接的利用法度榜样仅必要关心其造访的办事。例如,假如 ESB 上的办事左券仍旧传入输入参数 postalcode 并吸收地区名称字符串,就不必要变动邮政编码到地区的利用法度榜样示例。只要办事左券未变动,利用法度榜样就会像曩昔一样事情。

是以,大年夜型机并未退出历史舞台。IT 组织并不必要由于移植遗留利用法度榜样而为其 IT 法度榜样引入额外的风险、繁杂性和资源。经由过程实现基于面向办事的措施,IT 组织可以继承从大年夜型机投资得到回报,并同时顺利地将其企业法度榜样徐徐向纯 SOA 模型过渡。不仅如斯,组织还能得到其他好处,例如,能够经由过程恰当的企业级面向办事的体系布局的实现前进其平台的可用性、机能和可造访性。这样,当必要履行实际的移植时,利用法度榜样间的影响就可以轻忽,由于企业中的所有统统都是面向办事的,而不是面向利用法度榜样的。

您可能还会对下面的文章感兴趣: