自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

SOA與大型主機(jī)在碰撞中融合

開(kāi)發(fā) 架構(gòu)
SOA與大型主機(jī)并不是絕對(duì)對(duì)立的矛盾面,而是可以通過(guò)一些方法在碰撞中融合。本文將結(jié)合四個(gè)實(shí)際案例來(lái)講解如何處理。

可惜的是,許多公司已經(jīng)著手搭建一個(gè)可稱為“偶然架構(gòu)”的架構(gòu),而這些公司的系統(tǒng)都已經(jīng)擁有超過(guò)10年的壽命。這個(gè)架構(gòu)就像一碗意大利面條,每一根面條代表一個(gè)系統(tǒng),而所有這些面條的每一個(gè)交錯(cuò)點(diǎn)都代表了這些系統(tǒng)之間的一個(gè)集成點(diǎn)。這個(gè)偶然架構(gòu)是利用了RPC、FTP消息隊(duì)列以及許多其它集成技術(shù)經(jīng)歷多年時(shí)間才發(fā)展起來(lái)的。但是,這個(gè)架構(gòu)非常復(fù)雜,而且很難進(jìn)行簡(jiǎn)單的替換或重寫操作。

那么,你為什么還要關(guān)心這個(gè)早已過(guò)時(shí)、難以操作并且脆弱、簡(jiǎn)陋的主機(jī)系統(tǒng)呢?因?yàn)槟闶且粋€(gè)Java/J2EE開(kāi)發(fā)員,你每天都要和Web服務(wù)、BPEL過(guò)程管理器和ESB打交道。而《軟件開(kāi)發(fā)》雜志的一次調(diào)查表明,“……47%的SOA應(yīng)用中都有主機(jī)應(yīng)用的蹤影?!边@意味著在一個(gè)SOA項(xiàng)目中,你大概有50%的幾率要和舊主機(jī)系統(tǒng)打交道。

SOA很容易被炒過(guò)頭,而且經(jīng)常被IT供應(yīng)商們捧作軟件架構(gòu)的“圣杯”。然而,在這個(gè)“舊資產(chǎn)現(xiàn)代化”的環(huán)境下,SOA集成架構(gòu)可以把一個(gè)舊系統(tǒng)引入到互聯(lián)網(wǎng)、Web2.0以及所有以網(wǎng)絡(luò)為基礎(chǔ)的***的IT架構(gòu)中。然后,用不了多久,你就可以通過(guò)網(wǎng)頁(yè)來(lái)訪問(wèn)一個(gè)舊系統(tǒng)了。這正是SOA相對(duì)其它舊系統(tǒng)集成技術(shù)的***優(yōu)勢(shì)。你的上市時(shí)間是以周為單位的,而不是月或年。我們現(xiàn)在生活在一個(gè)關(guān)注時(shí)間短且需要獲得即時(shí)滿足的時(shí)代里;我們不再需要早報(bào),因?yàn)槲覀儚木W(wǎng)絡(luò)上得到所需的信息。我們的現(xiàn)代化旅程要能夠反映這些變化。因此許多舊資產(chǎn)的現(xiàn)代化項(xiàng)目選擇了SOA集成作為***階段。

    舊資產(chǎn)的SOA集成:主機(jī)上的集成點(diǎn)

    開(kāi)始之前,我們先來(lái)看看SOA利用主機(jī)系統(tǒng)的幾種方式。我們可以使用各種各樣的舊組件。舊組件是指主機(jī)上的具體的邏輯、顯示和數(shù)據(jù),是業(yè)務(wù)用戶需要訪問(wèn)的部分。我們不能只看集成點(diǎn),還要了解選擇舊組件或訪問(wèn)方式的原因:

◆呈現(xiàn)層——即通常所說(shuō)的“綠屏”。這是一個(gè)體積龐大的非智能終端機(jī),是與主機(jī)系統(tǒng)進(jìn)行雙向交互的唯一方式。包括主機(jī)3270或VT220(DEC)傳輸設(shè)備、iSeries傳輸設(shè)備(5250)等。

為什么應(yīng)用、數(shù)據(jù)等上面要有呈現(xiàn)層?因?yàn)檫@些應(yīng)用源都是無(wú)法使用的。也可能是其它原因,比如由于安全或限制性因素造成的無(wú)法直接訪問(wèn),或者應(yīng)用中沒(méi)有相應(yīng)的流程或SQL。SOA只是運(yùn)行主機(jī)應(yīng)用并將顯示、菜單和字段以服務(wù)的形式呈現(xiàn)出來(lái)。這種做法很簡(jiǎn)潔,速度也很快,而且最重要的是很方便。

◆應(yīng)用——應(yīng)用服務(wù)的實(shí)現(xiàn)并不是簡(jiǎn)單地把處理過(guò)程封裝為Web服務(wù)。這包括系統(tǒng)性能的各個(gè)方面,也包括CICS/IMS事務(wù)、Natural事務(wù)、IDMS與ADS/O會(huì)話、COBOL程序和批處理程序等。它也包括業(yè)務(wù)規(guī)則、數(shù)據(jù)驗(yàn)證邏輯和其它事務(wù)的一部分的業(yè)務(wù)處理過(guò)程。

    為什么要集成以應(yīng)用為基礎(chǔ)的舊系統(tǒng)?應(yīng)用是大部分系統(tǒng)的核心。它包括顯示、業(yè)務(wù)邏輯、業(yè)務(wù)規(guī)則、工作流、安全和舊系統(tǒng)的整體性能。主機(jī)系統(tǒng)上的事務(wù)是IT用戶與系統(tǒng)交互的方式。因此,當(dāng)你想重復(fù)利用舊系統(tǒng)上的既有功能,使用應(yīng)用層就是最合理的一種方式。這種方式使你可以利用當(dāng)前應(yīng)用所有的行為(規(guī)則、事務(wù)處理流程、邏輯和安全)而無(wú)需在開(kāi)放的系統(tǒng)上重新創(chuàng)建。

◆數(shù)據(jù)——舊系統(tǒng)上的數(shù)據(jù)可以是相關(guān)的或無(wú)關(guān)的。大多數(shù)情況下,舊系統(tǒng)上會(huì)有一個(gè)無(wú)關(guān)的數(shù)據(jù)存儲(chǔ),比如關(guān)鍵字文件、網(wǎng)絡(luò)數(shù)據(jù)庫(kù)或分級(jí)文件系統(tǒng)。在對(duì)舊系統(tǒng)上的數(shù)據(jù)進(jìn)行讀寫操作的時(shí)候,SOA集成層將使用SQL這種簡(jiǎn)單易行的方式來(lái)訪問(wèn)所有的數(shù)據(jù)源。這一點(diǎn)很重要,因?yàn)樵S多企業(yè)可能更傾向于使用基于SQL的集成而不是基于SOA的數(shù)據(jù)集成。IT架構(gòu)決定了在開(kāi)放系統(tǒng)數(shù)據(jù)庫(kù)中使用SQL語(yǔ)句比引入一套完整的SOA設(shè)施要簡(jiǎn)單得多。

為什么是數(shù)據(jù)?因?yàn)檫@是準(zhǔn)確性的根源。它是你所需要的信息的儲(chǔ)存之處。如果你使用了另外三個(gè)組件的任何一個(gè),那么它們最終必然導(dǎo)致你需要一個(gè)數(shù)據(jù)存儲(chǔ)。因此,讓你所有的服務(wù)都以數(shù)據(jù)為基礎(chǔ)就是順理成章的了。有時(shí)候,安全和加密等方面的原因可能會(huì)使這里無(wú)法實(shí)現(xiàn)。還有時(shí)候,你需要先實(shí)現(xiàn)業(yè)務(wù)邏輯、業(yè)務(wù)規(guī)則、或者轉(zhuǎn)換才能繼續(xù)數(shù)據(jù)方面的工作。但是,如果上面這些還無(wú)法進(jìn)行,那么直接開(kāi)始數(shù)據(jù)源的工作也是個(gè)不錯(cuò)的選擇。

 ◆其它——存儲(chǔ)程序和SQL大多分布式應(yīng)用訪問(wèn)數(shù)據(jù)存儲(chǔ)的方式。存儲(chǔ)程序也為應(yīng)用性能、代碼重用、應(yīng)用邏輯封裝、安全和集成提供了很大方便。

為什么要使用存儲(chǔ)程序和SQL?因?yàn)槟阍谵D(zhuǎn)向分布式、開(kāi)放的系統(tǒng)和關(guān)系數(shù)據(jù)庫(kù),而這些技術(shù)在這個(gè)環(huán)境下的表現(xiàn)相當(dāng)不錯(cuò)。當(dāng)然也要受到人力和技能方面的影響。你的開(kāi)放系統(tǒng)開(kāi)發(fā)人員必須熟悉存儲(chǔ)程序,并能熟練地開(kāi)發(fā)它們。

舊資產(chǎn)的SOA集成:四個(gè)典型案例

在各種技術(shù)期刊上,許多IT分析師都說(shuō)過(guò)SOA并不是一種產(chǎn)品或方案,而是一個(gè)旅程。如果SOA是一個(gè)旅程,那么舊SOA資產(chǎn)的現(xiàn)代化則是一個(gè)"整理備用衣服"的旅程。這是因?yàn)榕fSOA資產(chǎn)的現(xiàn)代化旅程可能會(huì)經(jīng)歷意想不到的曲折和艱辛,你會(huì)遇到業(yè)務(wù)目標(biāo)、關(guān)鍵人員和技術(shù)發(fā)生變動(dòng)的情況。

我們將分析我們所遇到的一系列常見(jiàn)的舊SOA資產(chǎn)現(xiàn)代化的實(shí)例來(lái)為你提供經(jīng)驗(yàn)。在每一個(gè)實(shí)例的***我們還會(huì)提供一個(gè)實(shí)際有效的設(shè)計(jì)方案。

#p#

    案例一:企業(yè)信息集成(EII)

    也稱為數(shù)據(jù)集成、文件共享、信息共享。

    問(wèn)題

    我們當(dāng)前用于信息集成的主機(jī)設(shè)備已經(jīng)很脆弱,并且價(jià)格昂貴、難以維護(hù)。

    典型的問(wèn)題包括沒(méi)有統(tǒng)一的工作流程、缺乏數(shù)據(jù)質(zhì)量、數(shù)據(jù)剖析能力低下、各數(shù)據(jù)專線都使用特定的傳輸邏輯、沒(méi)有實(shí)時(shí)監(jiān)控的能力、并且無(wú)法迅速地添加新數(shù)據(jù)傳送專線。

    背景

    需要與公司內(nèi)外部的新系統(tǒng)和其它主機(jī)系統(tǒng)上開(kāi)發(fā)的新系統(tǒng)共享數(shù)據(jù)。

    幾乎所有的主機(jī)系統(tǒng)都有數(shù)據(jù)傳送專線來(lái)傳入或傳出數(shù)據(jù)。這些數(shù)據(jù)專線通常都由一個(gè)每日進(jìn)行一次批處理的工作流程管理系統(tǒng)控制。

    動(dòng)力

    以前應(yīng)用和企業(yè)是各自獨(dú)立的。現(xiàn)在應(yīng)用與企業(yè)之間產(chǎn)生了對(duì)信息共享的巨大需求。

    解決方案

 

    架構(gòu)概述

    舊資產(chǎn)的SOA集成的目標(biāo)并不是分解當(dāng)前的業(yè)務(wù)過(guò)程和舊系統(tǒng)。我們之所以保留了數(shù)據(jù)專線也是出于這個(gè)考慮。要想對(duì)數(shù)據(jù)專線做出哪怕很小的改動(dòng)也是不可能的,因?yàn)椋?/P>

    ◆ 如果涉及第三方團(tuán)隊(duì),或者甚至是只牽涉到企業(yè)內(nèi)部不受你控制的一個(gè)團(tuán)隊(duì),完成這項(xiàng)工作也要花費(fèi)數(shù)月的時(shí)間。

    ◆即使是內(nèi)部數(shù)據(jù)專線也影響著源系統(tǒng)、當(dāng)前的過(guò)程和目標(biāo)系統(tǒng),以至即使是很小的一個(gè)改動(dòng)也會(huì)產(chǎn)生連鎖反應(yīng),使這項(xiàng)工作花費(fèi)數(shù)月時(shí)間。

    當(dāng)前的數(shù)據(jù)專線將繼續(xù)保留。圖表顯示了諸如Legacy Adapters和Oracle Messaging等技術(shù),業(yè)務(wù)過(guò)程發(fā)生變化時(shí)可以對(duì)其進(jìn)行調(diào)整。

    ◆ Oracle ESB—Oracle ESB將使用文件或FTP適配器讀取平面文件,然后將平面文件轉(zhuǎn)換為普通(標(biāo)準(zhǔn))XML文件格式。消息將根據(jù)源或數(shù)據(jù)專線發(fā)送到相應(yīng)的Orcale BPEL過(guò)程。

    ◆Oracle BPEL—這里是接收我們前面討論的工作流與處理過(guò)程的地方:

        Oracle BPEL將調(diào)用Java或Web服務(wù)過(guò)程進(jìn)行所有的驗(yàn)證處理。驗(yàn)證過(guò)程可能會(huì)調(diào)用Oracle數(shù)據(jù)庫(kù)并根據(jù)數(shù)據(jù)庫(kù)里的數(shù)據(jù)驗(yàn)證信息。

        驗(yàn)證之后即進(jìn)行特定文件格式的處理,也就是將“業(yè)務(wù)規(guī)則”應(yīng)用到輸入數(shù)據(jù)文件。這個(gè)業(yè)務(wù)處理過(guò)程將調(diào)用Oracle業(yè)務(wù)規(guī)則引擎。

        常規(guī)錯(cuò)誤處理--驗(yàn)證和/或業(yè)務(wù)規(guī)則處理錯(cuò)誤將被發(fā)送到錯(cuò)誤處理路由。結(jié)果填充到BPEL工作表,然后工作人員便可以更正問(wèn)題文件或記錄。

        數(shù)據(jù)持久性Web服務(wù)--數(shù)據(jù)將儲(chǔ)存在Oracle數(shù)據(jù)庫(kù)、IMS數(shù)據(jù)庫(kù)、和/或Oracle電子商務(wù)套件中。

案例二:舊資產(chǎn)的Web使能

    亦稱為屏幕抓取或接口重連。

    問(wèn)題

    我們的售后服務(wù)人員、業(yè)務(wù)代表、顧客和合作伙伴希望能通過(guò)網(wǎng)絡(luò)訪問(wèn)我們的系統(tǒng)。為什么不能使用一個(gè)接口同時(shí)更新舊系統(tǒng)和Oracle系統(tǒng)呢?

    舊"綠屏"技術(shù)有許多限制。其中一個(gè)很大的問(wèn)題是這些技術(shù)不是很直觀。你必須訪問(wèn)多個(gè)屏幕或系統(tǒng)才能得到所需的信息,也不支持點(diǎn)擊操作。另外,很多時(shí)候用戶可能需要使用多個(gè)系統(tǒng)來(lái)查詢或更新同樣的或相似的數(shù)據(jù)。

    背景

    用戶希望能在任何地方任何時(shí)間得到他們想要的數(shù)據(jù)。用戶還希望他們的舊系統(tǒng)能和新的Oracle環(huán)境融合。

    一個(gè)需要用戶查詢多個(gè)系統(tǒng)、然后更新多個(gè)系統(tǒng)的業(yè)務(wù)過(guò)程會(huì)大大地降低工作效率,并且很可能導(dǎo)致數(shù)據(jù)不一致。

    動(dòng)力

    我們看到網(wǎng)絡(luò)用戶的年齡非常年輕化。而且提供更好的應(yīng)用接口的技術(shù)多年以前就已經(jīng)成熟了。

    解決方案

 

    架構(gòu)概述

    這個(gè)案例的關(guān)鍵是接口。所以我們選用了Oracle WebCenter和/或JSP/JSF。開(kāi)始的時(shí)候我們可以選擇使用JSP和/或JSF保持開(kāi)發(fā)的簡(jiǎn)潔并迅速部署。在更成熟的階段可以使用JSF來(lái)開(kāi)發(fā)JSR-168 portlet,并用Oracle WebCenter或其它類似技術(shù)進(jìn)行部署。

#p#

案例三:舊系統(tǒng)利用數(shù)據(jù)遷移制作卸載報(bào)告

    也稱為舊操作數(shù)據(jù)存儲(chǔ)、報(bào)告現(xiàn)代化、業(yè)務(wù)智能整合。

    問(wèn)題

    IT說(shuō):我們的舊報(bào)告設(shè)施已經(jīng)花費(fèi)了幾百萬(wàn)美元,還積壓了六個(gè)月的報(bào)告單。

    用戶說(shuō):我手上已經(jīng)有100多張條紋報(bào)表,但我仍然無(wú)法根據(jù)這些信息做出決策來(lái)。

    背景

    用戶需要不同格式與規(guī)格的信息。他們還希望能簡(jiǎn)單地做一些特定條件和假設(shè)條件場(chǎng)景。

    許多以主機(jī)為中心的企業(yè)經(jīng)常要在每張電子表格上都做一遍銷售預(yù)測(cè)。

    動(dòng)力

    在主機(jī)上做報(bào)告是一筆龐大的支出,而業(yè)務(wù)用戶通常還無(wú)法得到他們做決策時(shí)所需要的信息。因此企業(yè)經(jīng)常發(fā)現(xiàn)他們的用戶使用Excel、SQL或其它桌面工具自己生成報(bào)告。這樣就造成了數(shù)據(jù)在整個(gè)企業(yè)的分散復(fù)制。

    解決方案

 

    架構(gòu)概述

    在Oracle Bam系統(tǒng)中,終端用戶和決策制定者都能實(shí)時(shí)查看傳入報(bào)告系統(tǒng)的***信息。終端用戶決策制定者可以根據(jù)***的消息制定實(shí)時(shí)決策。不管是每分鐘讀取的數(shù)據(jù)量減少,或是用戶報(bào)告的響應(yīng)時(shí)間發(fā)生變化,只要資料讀取速度變慢,IT管理部門馬上就能收到警告信息。

    可以使用BPEL編排傳入Oracle數(shù)據(jù)庫(kù)的信息流。BPEL可以根據(jù)傳入時(shí)間或具體文件的傳入或持續(xù)尋找可讀取的數(shù)據(jù)來(lái)規(guī)劃數(shù)據(jù)讀取。

    Oracle數(shù)據(jù)集成器(ODI)提供了一個(gè)可以快速地批量讀取數(shù)據(jù)到Oracle報(bào)告數(shù)據(jù)庫(kù)的方式。通過(guò)它可以訪問(wèn)數(shù)據(jù)轉(zhuǎn)換、數(shù)據(jù)整理和數(shù)據(jù)管理服務(wù)。ODI是完全支持Web服務(wù)的,任何ODI組件都可以被Oracle BPEL、Oracle ESB或其它任何Web服務(wù)使能工具或產(chǎn)品使用。

案例四:端對(duì)端SOA

    也稱為軟件即服務(wù),舊資產(chǎn)的SOA集成。

    問(wèn)題

    這個(gè)舊系統(tǒng)真是一個(gè)“黑盒子”。向內(nèi)部輸入信息是一件相當(dāng)費(fèi)力的事情,而要從中獲取信息則更讓人頭痛。而我對(duì)其中運(yùn)行的業(yè)務(wù)過(guò)程也一無(wú)所知。

    背景

    你的主機(jī)系統(tǒng)已經(jīng)無(wú)法讓你明白業(yè)務(wù)是如何運(yùn)轉(zhuǎn)的。舊系統(tǒng)難以維護(hù)、改善或者為內(nèi)外部客戶添加新服務(wù)(發(fā)布產(chǎn)品)。

    動(dòng)力

    用戶團(tuán)體要求能夠?qū)崟r(shí)對(duì)信息進(jìn)行處理并可以馬上得到結(jié)果。系統(tǒng)的信息集成接口幾乎以周為單位發(fā)生變化,而新的貿(mào)易伙伴甚至希望能每天與你保持聯(lián)系而不是一個(gè)月才聯(lián)系一次。系統(tǒng)接口需要根據(jù)情況進(jìn)行定制,這樣內(nèi)部高層用戶可以看到所有信息,銷售人員只能看到相關(guān)的銷售數(shù)據(jù),顧客只能看到他們自己的數(shù)據(jù)和訂單,這樣公司管理人員能夠?qū)崟r(shí)地獲得業(yè)務(wù)的***狀態(tài)報(bào)告而不是只能看到幾個(gè)星期以前的狀態(tài)報(bào)告。

    解決方案

 

    架構(gòu)概述

    既然我們要為用戶提供定制的視圖,那么WebCenter或類似的技術(shù)顯然就是最簡(jiǎn)單而且最有效的選擇了。

    BAM在這里發(fā)揮著相當(dāng)重要的作用,處理量增加時(shí)更是如此。BAM可以在單個(gè)屏幕上監(jiān)控所有的業(yè)務(wù)過(guò)程和服務(wù)。

    就像ESB被用來(lái)從其它系統(tǒng)集成數(shù)據(jù)并提供集成總線一樣,在這里ESB也被用來(lái)接收兩種不同格式的文件并統(tǒng)一進(jìn)行處理。

    總結(jié)

    阿伯?。ˋberdeen)集團(tuán)曾經(jīng)說(shuō)過(guò):“利用SOA集成舊系統(tǒng)上的舊應(yīng)用的組織已經(jīng)超越了那些使用其它方式的組織。他們的舊資產(chǎn)集成項(xiàng)目具有更高的效率、更高的敏捷性和更低的成本。”雖然這只是IT分析公司的一家之言,但是它確確實(shí)實(shí)地表明了SOA集成在企業(yè)舊資產(chǎn)現(xiàn)代化中的重要性。因?yàn)楦斓模ㄒ栽聻閱挝欢皇悄辏┡f資產(chǎn)的SOA集成不僅能帶領(lǐng)一個(gè)組織進(jìn)入21世紀(jì),它還能允許客戶自行進(jìn)行集成并提供統(tǒng)一的業(yè)務(wù)過(guò)程和更敏捷的IT基礎(chǔ)設(shè)施。

責(zé)任編輯:彭凡 來(lái)源: itpub
相關(guān)推薦

2012-12-12 09:38:12

信息化

2010-04-30 18:16:29

Unix系統(tǒng)

2011-07-13 09:13:31

中移動(dòng)SOA云計(jì)算

2015-08-24 15:13:52

DevOps主機(jī)數(shù)據(jù)中心

2013-08-22 09:10:44

API管理工具SOA治理應(yīng)用服務(wù)治理

2012-05-11 16:25:41

IBM ELSIBM大型主機(jī)IBM System

2018-01-03 09:58:19

BPM

2016-03-11 15:27:13

聯(lián)想

2011-10-17 19:33:43

OracleOOW2011云計(jì)算

2009-07-15 10:40:06

碰撞檢測(cè)算法Java ME

2024-05-28 09:05:31

2012-04-13 14:03:19

SOA

2012-05-28 10:02:23

大型主機(jī)

2020-03-18 13:22:33

虛擬機(jī)OpenStack裸機(jī)

2018-04-11 18:34:28

主機(jī),IBM,z14,

2011-07-14 10:03:38

IBM大型主機(jī)刀片服務(wù)器

2015-08-19 14:27:58

IBM大型主機(jī)LinuxONE

2012-11-01 14:35:53

SOAWeb安全Web服務(wù)

2013-01-08 16:25:24

堡壘主機(jī)

2011-09-29 13:52:57

服務(wù)器HPC浪潮TS850
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)