簡介:基于SOA面向服務的技術架構解決方案,,,,SOA架構概述,,SOA概述”信息孤島”問題,,信息化的發(fā)展,企業(yè)間協(xié)同商務和企業(yè)信息門戶等要求企業(yè)的應用系統(tǒng)是一個高度集成和開放的系統(tǒng)。然而大型企業(yè)往往擁有著異構系統(tǒng),導致系統(tǒng)間信息的交互與互操作非常困難,形成了一個個“信息孤島”,為了實現(xiàn)企業(yè)全局的業(yè)務過程自動化,需要投入大量的人力和財力來進行系統(tǒng)集成。“信息孤島”定義所謂“信息孤島”是指,在一個單位的各個部門之間由于種種原因造成部門與部門之間完全孤立,各種信息(如財務信息、各種計劃信息等)無法或者無法順暢地在部門與部門之間流動。這樣就會形成信息孤島。是重硬輕軟,重網(wǎng)絡輕數(shù)據(jù)的表現(xiàn)。,,SOA概述”信息孤島”問題,,“信息孤島”類型企業(yè)在信息化過程中存在各種類型的信息孤島。大體可分為數(shù)據(jù)孤島、系統(tǒng)孤島、業(yè)務孤島、管控孤島四種類型。1、數(shù)據(jù)孤島數(shù)據(jù)孤島是最普遍的形式,存在于所有需要進行數(shù)據(jù)共享和交換的系統(tǒng)之間。隨著企業(yè)計算機技術運用的不斷深入,不同軟件間,尤其是不同部門間的數(shù)據(jù)信息不能共享,設計、管理、生產(chǎn)的數(shù)據(jù)不能進行交流,數(shù)據(jù)出現(xiàn)脫節(jié),即產(chǎn)生信息孤島,勢必給企業(yè)的運用帶來信息需要重復多次的輸入、信息存在很大的冗余、大量的垃圾信息、信息交流的一致性無法保證等困難。2、系統(tǒng)孤島系統(tǒng)孤島指在一定范圍內(nèi),需要集成的系統(tǒng)之間相互孤立的現(xiàn)象。原先各自為政所實施的局部應用使得各系統(tǒng)之間彼此獨立,信息不能共享,成為一個個信息孤島。有條件的企業(yè)投入資金將以前的系統(tǒng)重新升級、設計,在一定范圍內(nèi)實現(xiàn)了信息的共享,業(yè)務可以跨部門按照流程順序執(zhí)行。經(jīng)過一段時間后,又有新的系統(tǒng)要上,又發(fā)現(xiàn)這些系統(tǒng)所需要的數(shù)據(jù)不能從現(xiàn)有系統(tǒng)中提取,仍然要從現(xiàn)有系統(tǒng)統(tǒng)計打印出來再輸入到新系統(tǒng)中,又出現(xiàn)了信息孤島。,,SOA概述”信息孤島”問題,,3、業(yè)務孤島業(yè)務孤島表現(xiàn)為企業(yè)業(yè)務不能通過網(wǎng)絡系統(tǒng)完整、順利的執(zhí)行和處理。在企業(yè)內(nèi)部網(wǎng)絡系統(tǒng)和網(wǎng)絡環(huán)境的建設中,以企業(yè)發(fā)展為目標的信息化要求日益迫切,企業(yè)的業(yè)務需要在統(tǒng)一的環(huán)境下,在部門之間進行處理。企業(yè)里經(jīng)常遇到的頭痛問題是“產(chǎn)供銷嚴重脫節(jié)”、“財務賬與實物賬不同步”,其實質就是生成流程、供應流程、銷售流程和財務流程都是孤立運行,沒有能夠形成一個有機的整體。信息孤島的要害就是割斷了本來是密切相連的業(yè)務流程,不能滿足企業(yè)業(yè)務處理的需要。4、管控孤島管控孤島指智能控制設備和控制系統(tǒng)與管理系統(tǒng)之間脫離的現(xiàn)象,影響控制系統(tǒng)作用的發(fā)揮。企業(yè)需要向其上級主管部門上報企業(yè)的經(jīng)營情況、接收上級的各種指令和計劃,同時管理層也需要通過信息系統(tǒng)了解和掌握現(xiàn)有信息做出明確的決斷,然而由于信息孤島的存在不能滿足信息共享需要。信息孤島的問題已經(jīng)嚴重地阻礙了企業(yè)信息化建設的整體進程,使企業(yè)在進行新一輪投入時,難于決斷。,,SOA概述”信息孤島”問題,,”信息孤島”問題主要表現(xiàn)第一,信息化發(fā)展的階段性。不論是企業(yè)信息化,還是政務信息化,都有一個從初級階段到中級階段,再到高級階段的發(fā)展過程。在計算機應用的初級階段,人們?nèi)菀讖奈淖痔幚?、報表打印開始使用計算機。進而圍繞一項項業(yè)務工作,開發(fā)或引進一個個應用系統(tǒng)。這些分散開發(fā)或引進的應用系統(tǒng),一般不會統(tǒng)一考慮數(shù)據(jù)標準或信息共享問題,追求“實用快上”的目標而導致“信息孤島”的不斷產(chǎn)生?!靶畔⒐聧u”的產(chǎn)生帶有一定的必然性,這并不可怕;可怕的是總停留在初級階段而不發(fā)展,不去解決“信息孤島”問題,還讓新的“信息孤島”繼續(xù)出現(xiàn)。第二,認識誤區(qū)。長期以來,由于信息化教育的深度和廣度不夠,在企業(yè)和政府部門中普遍存在著“重硬輕軟,重網(wǎng)絡輕數(shù)據(jù)”的認識誤區(qū)。他們在設備選型和網(wǎng)絡構筑上肯下工夫,肯花大錢,甚至成了“追新族”,使網(wǎng)絡設備“換了一茬又一茬”而造成很大的浪費,就是沒有用心去進行信息資源的開發(fā)與利用,因而導致對“信息孤島”問題熟視無睹,使其得以長期存在而得不到解決。,,SOA概述軟件體系發(fā)展,,軟件體系結構發(fā)展過程,,SOA概述企業(yè)應用集成,,EAIENTERPRISEAPPLICATIONINTEGRATION企業(yè)應用集成EAI狹義上指企業(yè)內(nèi)部不同應用系統(tǒng)之間的互連,以期通過應用整合實現(xiàn)數(shù)據(jù)在多個系統(tǒng)之間的同步和共享。EAI廣義上它已經(jīng)被擴展到業(yè)務整合BUSINESSINTEGRATION的范疇,業(yè)務整合相對EAI來說是一個更寬泛的概念,它將應用整合進一步拓展到業(yè)務流程整合的級別。業(yè)務整合不僅要提供底層應用支撐系統(tǒng)之間的互連,同時要實現(xiàn)存在于企業(yè)內(nèi)部應用與應用之間,本企業(yè)和其他合作伙伴之間的端到端的業(yè)務流程的管理,它包括應用整合,B2B整合,自動化業(yè)務流程管理,人工流程管理,企業(yè)門戶以及對所有應用系統(tǒng)和流程的管理和監(jiān)控等方方面面。,,SOA概述企業(yè)應用集成,,EAI企業(yè)應用集成的分層EAI技術層次體系應該包括應用接口層,應用整合層,流程整合層和用戶交互層四個大的層面。1應用接口層EAI要解決的問題是獨立應用系統(tǒng)之間的連接,傳統(tǒng)的應用系統(tǒng)之間的連接方式包括了CORBA,SOCKET通訊,RMI,RPC,EJB,COM/COM,HTTP和FTP等,數(shù)據(jù)庫系統(tǒng)之間常見的連接規(guī)范包括ODBC,JDBC。而在EAI的應用接口層,主要是通過適配器技術將原有數(shù)據(jù)庫系統(tǒng)、應用系統(tǒng)和原有網(wǎng)絡服務組件封裝起來,實現(xiàn)系統(tǒng)之間的互通互聯(lián)。適配器的引入主要有以下優(yōu)點為獨立的系統(tǒng)之間提供重用的、統(tǒng)一的接口;支持事務管理、安全性和連接管理與應用系統(tǒng)連接;增加企業(yè)數(shù)據(jù)資源的共享程度;適配器封裝了對數(shù)據(jù)操作的緩沖區(qū),可以提高對數(shù)據(jù)批處理訪問的效率;增強了基于組件或面向對象開發(fā)模塊的網(wǎng)絡應用的功能,這些組件或對象包括如COM,DCOM或CORBA等。,,SOA概述企業(yè)應用集成,,2應用整合層應用整合層是EAI技術層次體系中的核心層次,該層次是連接業(yè)務流程管理層和應用接口層的橋梁。數(shù)據(jù)信息在業(yè)務流程中的流轉以及在各個應用系統(tǒng)之間的交互必須建立在數(shù)據(jù)源和數(shù)據(jù)目的地都能理解該數(shù)據(jù)信息的基礎之上。在應用整合層我們定義了能為數(shù)據(jù)產(chǎn)生源、數(shù)據(jù)處理地、數(shù)據(jù)投送地都能理解的信息處理規(guī)范方式、方法和規(guī)則,也就是數(shù)據(jù)格式定義、數(shù)據(jù)轉換和消息路由。3流程整合層,,SOA概述企業(yè)應用集成,,EAI企業(yè)應用集成的分層EAI技術層次體系應該包括應用接口層,應用整合層,流程整合層和用戶交互層四個大的層面。EAI企業(yè)應用集成主要解決用戶界面集成、數(shù)據(jù)集成、業(yè)務流程集成、函數(shù)/方法集成,這4種集成方法不能方便、靈活、低代價地實現(xiàn)異構系統(tǒng)的集成,難以快速適應企業(yè)現(xiàn)代業(yè)務變化的需求。所以企業(yè)級應用要求新的軟件系統(tǒng)不再是從底層做起,而只是依據(jù)企業(yè)邏輯需求重新組織己有的數(shù)據(jù)存儲,將現(xiàn)有的數(shù)據(jù)和事務通過新的渠道,如瀏覽器或者手持設備呈現(xiàn)給用戶?;诿嫦蚍占軜婼ERVICEORIENTEDARCHITECTURE,SOA的應用集成開發(fā)方案就是企業(yè)的首選。,,SOA概述EAI是什么,,EAIENTERPRISEAPPLICATIONINTEGRATION企業(yè)應用集成信息化的發(fā)展,企業(yè)間協(xié)同商務和企業(yè)信息門戶等要求企業(yè)的應用系統(tǒng)是一個高度集成和開放的系統(tǒng)。然而大型企業(yè)往往擁有著異構系統(tǒng),導致系統(tǒng)間信息的交互與互操作非常困難,形成了一個個“信息孤島”,為了實現(xiàn)企業(yè)全局的業(yè)務過程自動化,需要投入大量的人力和財力來進行系統(tǒng)集成。EAI企業(yè)應用集成主要解決用戶界面集成、數(shù)據(jù)集成、業(yè)務流程集成、函數(shù)/方法集成,這4種集成方法不能方便、靈活、低代價地實現(xiàn)異構系統(tǒng)的集成,難以快速適應企業(yè)現(xiàn)代業(yè)務變化的需求。所以企業(yè)級應用要求新的軟件系統(tǒng)不再是從底層做起,而只是依據(jù)企業(yè)邏輯需求重新組織己有的數(shù)據(jù)存儲,將現(xiàn)有的數(shù)據(jù)和事務通過新的渠道,如瀏覽器或者手持設備呈現(xiàn)給用戶。基于面向服務架構SERVICEORIENTEDARCHITECTURE,SOA的應用集成開發(fā)方案就是企業(yè)的首先。,,SOA概述SOA是什么,,SOASERVICEORIENTEDARCHITECTURE面向服務的架構SOA是一種分布式的軟件組件模型。整個應用程序被設計和實現(xiàn)為一組相互交互的服務,它使得系統(tǒng)中的某些服務能夠充分利用其他的服務同時卻無需考慮其物理位置。在該模型中,任何的業(yè)務功能被作為提供的一個服務使用。應用程序的不同功能服務通過這些服務之間定義良好的接口和契約聯(lián)系起來,使得構建在系統(tǒng)中的服務可以以一種統(tǒng)一和通用的方法進行調用。這種具有中立的接口定義沒有強制綁定到特定的實現(xiàn)上的特征稱為服務之間的松藕合。松藕合系統(tǒng)的好處有兩點它的靈活性;當組成整個應用程序的每個服務的內(nèi)部結構和實現(xiàn)逐漸地發(fā)生改變時,它能夠繼續(xù)存在。,,SOA概述SOA特征是什么,,SOA架構具有以下特征1可從企業(yè)外部詢問。2隨需應變。3粗粒度的服務接口。4分級。5松散耦合。6可重用的服務。7標準化的服務接口。8支持各種消息模式。9精確定義的服務契約。,,SOA概述SOA優(yōu)勢是什么,,SOA架構具有以下優(yōu)勢1基于SOA架構的信息系統(tǒng)建設投資少、周期短、使用成本低、靈活性高。2SOA架構更能適應國內(nèi)企業(yè)業(yè)務流程和商業(yè)模式的快速變化。3與傳統(tǒng)架構的ERP相比,SOA架構更能適應國內(nèi)企業(yè)管理模式,符合現(xiàn)階段信息化變革的要求。4SOA架構能夠充分得用原有信息資源,保護投資。5SOA架構可能降低軟件系統(tǒng)對硬件資源的依賴程度。6SOA架構的建設改變了企業(yè)信息化推進模式,且有助于建立自己的開發(fā)隊伍,管理隊伍和運維隊伍。,,,,第二部分SOA架構體系,SOA體系三大核心部件,,一、ESBENTERPRISESERVICEBUS企業(yè)服務總線ESB是傳統(tǒng)中間件技術與XML、WEB服務等技術結合的產(chǎn)物。ESB提供了網(wǎng)絡中最基本的連接中樞,是構筑企業(yè)神經(jīng)系統(tǒng)的必要元素。從功能上看,ESB提供了事件驅動和文檔導向的處理模式,以及分布式的運行管理機制,它支持基于內(nèi)容的路由和過濾,具備了復雜數(shù)據(jù)的傳輸能力,并可以提供一系列的標準接口。ESB的五個基本功能1服務的METADATA管理在總線范疇內(nèi)對服務的注冊命名及尋址管理功能。2傳輸服務必須確保通過企業(yè)總線互連的業(yè)務流程間的消息的正確交付,傳輸還包括基于內(nèi)容的路由功能。3中介提供位置透明性的服務路由和定位服務;多種消息傳遞形式;支持廣泛使用的傳輸協(xié)議。4多種服務集成方式如JCA,WEB服務,MESSAGING,ADAPTOR等5服務和事件管理支持如服務調用的記錄、測量和監(jiān)控數(shù)據(jù);提供事件檢測、觸發(fā)和分布功能;,,SOA體系三大核心部件,,二、BPMBUSINESSPROCESSMANAGEMENT業(yè)務流程管理所謂業(yè)務流程管理是指根據(jù)業(yè)務環(huán)境的變化,推進人與人之間、人與系統(tǒng)之間的整合及調整經(jīng)營方法與解決方案的IT工具。BPM可以使系統(tǒng)更為強壯,通過BPM組件,SOA能夠更好地監(jiān)控它連接的系統(tǒng)。三、PORTAL門戶門戶是一個基于WEB的應用程序,它提供個性化、單點登錄、不同來源內(nèi)容整合及存放信息系統(tǒng)的表示層。PORTAL是低成本的集成技術。如果企業(yè)已經(jīng)有了很多信息系統(tǒng),PORTAL可以很容易的將這些系統(tǒng)集成到一起,并以統(tǒng)一界面方式提供給用戶。,,SOA體系組件模型,,1服務提供者服務提供者是一個可通過網(wǎng)絡尋址的實體,它接受和執(zhí)行來自使用者的請求;2服務使用者服務使用者是一組使用服務提供者所提供的一項或多項服務的組件;3服務儲備庫服務儲備庫包含服務的描述,服務提供者在該儲備庫中注冊其服務,而服務使用者訪問該儲備庫已發(fā)現(xiàn)的所提供的服務。,,SOA體系架構模型,,,SOA體系具體實現(xiàn),,SOA是一種軟件架構,而不是局限于某個技術的組合,它超越了技術范圍。SOA的關鍵是“服務”。W3C將服務定義為“服務提供者完成一組工作,為服務使用者交付所需的最終結果。最終結果通常是使用者的狀態(tài)發(fā)生變化,但也可能是提供者的狀態(tài)改變,或者雙方都產(chǎn)生變化”。服務是網(wǎng)絡中可用的軟件資源。服務提供者通過標準機制提供服務,使用者通過網(wǎng)絡有計劃地使用服務。服務儲備庫發(fā)布服務所在位置,并在使用者請求服務時定位服務。服務使用者和提供者的角色不是唯一的,服務提供者也可以是使用者,反之亦然。SOA具體的實現(xiàn)有很多,包括WEBSERVICE,SESSIONBEAN,JINI等,但隨著WEBSERVICE技術被越來越重視,其己經(jīng)成為構建SOA的主要技術。,,SOA體系WEBSERVICE,,WEBSERVICE是SOA中服務的主要實現(xiàn)技術,也是一種廣泛采用的新的組件技術。SOA是一種軟件架構,面向商業(yè)應用;WEB則是一種技術架構,面向實現(xiàn)模式。WEBSERVICE所涉及的關鍵技術包括1XMLXML標準是一個基于文本的W3C規(guī)范標記語言。2SOAPSIMPLEOBJECTACCESSPROTOCOL簡單對象訪問協(xié)議客戶端請求和WEB服務響應通過簡單對象訪問協(xié)議在HTTP上傳輸,以運行于不同平臺和地點的客戶端與WEB服務之間建立完全的互操作。HTTP是在互聯(lián)網(wǎng)上發(fā)送消息時常用的請求與響應標準協(xié)議,而SOAP是一種基于XML的協(xié)議,仍然繼承HTTP請求和響應模式。3WSDLWEBSERVICESDESCRIPTIONLANGUAGEWEB服務描述語言WEB服務描述語言是一種描述網(wǎng)絡WEB服務的XML標準格式。描述的內(nèi)容包括服務名稱、服務地點、如何與服務通信。眾多WSDL可以存放于UDDI注冊表,并在WEB上公布。4UDDIUNIVERSALDESCRIPTION,DISCOVERY,ANDINTEGRATIONUDDI通用描述,發(fā)現(xiàn)與集成,基于XML的標準,使企業(yè)可以將有關其產(chǎn)品和WEB服務的信息發(fā)布在互聯(lián)網(wǎng)上,并使這些信息可以被全球任何一個想做生意的客戶端訪問到??梢詫DDI想像成一個WEB服務的黃頁。,,SOA體系SCA架構思想,,SCA和SDO標準是IBM和BEA等公司推出的,SCA實現(xiàn)了業(yè)務組件和傳輸協(xié)議的分離,可以處理各種平臺組件的集成。SDO可以自由讀取各種不同數(shù)據(jù)源的數(shù)據(jù)。另外,BPEL本質上是一種集成WEBSERVICE服務的語言,也可以算作為SOA的一部分。SCA(SERVICECOMPONENTARCHITECTURE)中文翻譯為“服務組件架構”,是一種全新的軟件架構思想。SCA中,最重要的一個概念是SERVICE服務,它的內(nèi)涵式獨立于具體的技術。因此,SCA不會稱之為JAVA組件架構,或WEBSERVICE組件架構。所謂的具體技術,主要有兩層含義一是程序語言,而是傳輸協(xié)議?,F(xiàn)有的組件是和傳輸協(xié)議緊密耦合的。比如EJB組件采用的是RMI傳輸協(xié)議,WEBSERVICE組件采用的是SOAP傳輸協(xié)議。SCA組件則能自由地綁定各種傳輸協(xié)議。SCA目標是讓服務組件能自由綁定各種傳輸協(xié)議,集成其他的組建與服務。SCA與傳統(tǒng)的業(yè)務組件最大區(qū)別在于SCA實現(xiàn)了兩個功能一是組件和傳輸協(xié)議的分離,二是接口和實現(xiàn)語言的分離。SCA的本質是一種軟件架構思想,SCA架構是獨立于程序語言的SOA架構。SCA主要是為集成的需要。使用SCA可以使組件之間處于一種松耦合的狀態(tài),不需要在自己的代碼中加入對方組件的接口代碼。,,SOA體系SCA架構思想,,SDOSERVICEDATAOBJECTS服務數(shù)據(jù)對象,SDO是SOA體系結構中的一個用來簡化和統(tǒng)一數(shù)據(jù)應用的開發(fā)框架,也是SCAMODULE的基本組成部分。SDO支持與XML的集成并且適用于J2EE模式和最佳實踐。與其他的數(shù)據(jù)集成模型不同,SDO不僅僅是數(shù)據(jù)的抽象,SDO框架也是一個斷開連接的編程模型,即可以在不連接任何數(shù)據(jù)源的情況下進行編程。BPELBUSINESSPROCESSEXECUTIONLANGUAGEWEB服務的業(yè)務流程執(zhí)行語言,BPEL提供了一種XML注釋和語義,用于指定基于WEB服務的業(yè)務流程行為。使用合作伙伴的交互方式,定義了該BPEL4WS流程。合作伙伴可以將服務提供給流程,也可以向流程請求服務,或者參與到流程的雙向交互中。BPEL通過指定順序來編排WEB服務,這對服務集合的調用來說意義深遠。BPEL還針對每個服務分配了合作伙伴的責任。您可以使用它來指定合作伙伴的公共接口和可執(zhí)行流程的描述。,,SOA體系SCA架構思想,,SDOSERVICEDATAOBJECTS服務數(shù)據(jù)對象,SDO是SOA體系結構中的一個用來簡化和統(tǒng)一數(shù)據(jù)應用的開發(fā)框架,也是SCAMODULE的基本組成部分。SDO支持與XML的集成并且適用于J2EE模式和最佳實踐。與其他的數(shù)據(jù)集成模型不同,SDO不僅僅是數(shù)據(jù)的抽象,SDO框架也是一個斷開連接的編程模型,即可以在不連接任何數(shù)據(jù)源的情況下進行編程。BPELBUSINESSPROCESSEXECUTIONLANGUAGEWEB服務的業(yè)務流程執(zhí)行語言,BPEL提供了一種XML注釋和語義,用于指定基于WEB服務的業(yè)務流程行為。使用合作伙伴的交互方式,定義了該BPEL4WS流程。合作伙伴可以將服務提供給流程,也可以向流程請求服務,或者參與到流程的雙向交互中。BPEL通過指定順序來編排WEB服務,這對服務集合的調用來說意義深遠。BPEL還針對每個服務分配了合作伙伴的責任。您可以使用它來指定合作伙伴的公共接口和可執(zhí)行流程的描述。,
下載積分: 6 賞幣
上傳時間:2024-01-06
頁數(shù): 25
大?。?0.45(MB)
子文件數(shù):