?

工業企業系統集成技術系統集成的軟件技術(上)

2017-08-31 12:40魏曉東,陳朝暉
自動化博覽 2017年5期
關鍵詞:系統集成調用異構

工業企業系統集成技術系統集成的軟件技術(上)

城市軌道交通標準技術委員會魏曉東廣州新科佳都科技有限公司陳朝暉

本講介紹系統集成中最重要的技術—系統集成軟件技術。信息化集成系統的層級被集成為有機整體,主要是通過系統集成軟件實現的。信息化集成系統不同層級通過分層分布式軟件架構集成起來實現信息化集成系統整體目標。信息化集成系統軟件將硬件平臺、網絡平臺、數據庫平臺、工具平臺,各種子系統應用軟件平臺以及系統整體的各種資源有機、高效地集成到一起,形成了一個完整的信息共享環境。系統集成軟件平臺決定系統集成的成敗、對智能生產、智能制造的開發、維護有重要的影響。系統集成軟件成為構建信息化集成系統的關鍵。

工業4.0時代,互聯網滲透到企業間和企業內的信息化集成系統?;ヂ摼W已成為新的計算基礎設施,它的出現和普及使計算機軟件開發、部署、運行和維護的環境開始從封閉、靜態逐步走向開放、動態。越來越多的企業提供基于互聯網的服務,新的業務模式得到了發展,企業業務系統之間的交互逐漸增強,系統之間的通信和集成問題凸現出來;在企業內部也存在異構系統之間的整合問題;因此,發展出了各種分布式系統集成技術。首先是分布式企業應用集成技術和分布式實時應用集成技術;進而言之,是系統集成軟件的核心——系統應用集成架構。

1.1 企業分布式應用集成技術

1.1.1 分布計算、分布式系統和分布式組件技術

在企業應用中分布計算是指各種不同的工作站通過網絡互相連接,由分布式系統提供跨越網絡透明地訪問各種異構設備所需要的支持,使得用戶可以充分利用網絡上的各種計算資源來完成自己的任務。與網絡技術的發展和日益增長的應用需求相適應,分布式計算已經成為新一代計算和應用的主流。

分布式計算中所涉及的分布式系統是指組件分布在網絡計算機上且通過消息傳遞進行通信和動作協調的系統。分布式系統具有以下特征:組件的并發性和組件故障的獨立性。構造分布式系統的挑戰主要是其組件的異構性、開放性(允許增加或替換組件)、安全性、可伸縮性(用戶數量增加時能正常運行的能力)、故障處理以及組件的并發性和透明性。構造和使用分布式系統的主要動力來源是資源共享,分布式系統之間的通信和集成技術是重點。

分布式系統中,中間件能夠很好的完成異構分布系統的集成,互操作,并且能夠很好地保證這些系統的可移植特性,因而極大地降低了開發分布式應用的周期,能夠提高系統的可靠性,是當前分布式應用開發和分布式系統集成的主要手段。中間件技術是軟件技術發展史上一大進步。中間件是基礎軟件的一大類,是一種介于應用軟件和操作系統之間的獨立的系統軟件或服務程序。它能屏蔽操作系統和網絡協議的差異,幫助管理各種復雜的異構的分系統,并為處于上層的應用程序提供一個標準的開發與運行環境,使得分布式應用軟件能夠獨立于特定的硬件和操作系統平臺,幫助用戶靈活、高效地開發和集成復雜的應用軟件。中間件可滿足大量應用的需要,運行于多種硬件和OS平臺,支持分布計算,提供跨網絡、硬件和OS平臺的應用或服務的交互;支持標準的協議,支持標準的接口。

隨著軟件的市場規模和軟件的系統規??焖贁U大,特別是網絡普及后,軟件的運行已經網絡化。軟件開發必須考慮網絡功能,即分布式特點,于是中間件技術又向前邁出一大步即分布式組件技術。21世紀的軟件工業面臨著如何將高效的應用程序開發和分發、較低的費用、良好的可管理性和足夠的安全性統一在一起。簡化軟件開發流程、降低開發成本、提高效益并開發出可用性、伸縮性、開放性好的軟件成為關鍵。分布式組件技術是解決這些問題的有效途徑,正在全面取代傳統的軟件設計方法。分布式組件技術具有面向對象的特點,能夠良好地模擬真實世界的各種情況,且能直接對應到軟件模塊中;對于系統級開發人員,通過分布式組件方式開發的組件可提供給各類應用軟件使用,并且可以重復多次使用,不用考慮升級問題。對于獨立軟件供應商,則可專心開發領域內應用組件,不用考慮跨平臺兼容性的問題。對于軟件使用人員,使用一致的應用組件節省了大量的學習時間。分布式組件技術使用經過封裝的可重用的軟件組件來構造應用程序,為多層結構系統開發注入了新的活力,使分布式應用軟件變得易開發、易修改和易升級。

1.1.2 分布式應用集成技術

企業自上世紀七十年代開始使用IT支持系統至今,一些大型企業中各種IT支持系統平均達數十種之多。它們大部分是一個個的信息孤島,管理著企業特定的各個職能部門的工作,相互之間缺乏有效的通信。隨著信息技術的不斷發展,今天的企業需要一個集成的、開放的、面向用戶且隨需而變的IT支持系統,因此面臨著應用系統的整合問題。不同的應用(尤其是不同企業的)的開發語言不同,部署平臺不同,通信協議不同,對外交換的數據格式也存在著差異,如何去解決解決語言差異、平臺差異、協議差異、數據差異所帶來的高代價的系統集成是這個問題的關鍵。

企業應用集成(Enterprise Application Integration,EAI)將企業中的業務流程、應用系統、硬件和各種標準聯合起來,在兩個或更多的企業應用系統之間實現無縫集成,是它們像一個整體一樣進行業務處理和信息共享。企業應用集成不僅包括企業內部的應用系統集成,還包括企業與企業之間的集成,以實現企業與企業之間的信息交換、商務協同、過程集成和組建虛擬企業和動態聯盟等。目前,常用的企業應用集成技術有遠程過程調用技術、分布式對象技術、面向消息的中間件技術和Web服務技術。

(1)遠程過程調用技術

RPC(Remote Procedure Call Protocol)——遠程過程調用協議,在分布式環境下,遠程過程調用允許本地計算機上的程序調用遠程計算機上的進程。遠程過程調用采用客戶機/服務器模式。允許發送一個請求(客戶進程)到服務器進程,服務器進程執行這個過程并發回一個結果(響應)消息。該方法最主要的特點是程序不需要知道調用的過程是本地還是遠地。遠程過程調用和傳統的過程調用不同就在于調用者(Caller或Client)和被調用的進程(Server)是在不同的機器上的不同的進程。遠程過程調用的靈活性體現在它的跨平臺性上,它不僅遠端的子程序,而且這種調用是可以跨越不同操作系統平臺的。遠程過程調用適合于小型的簡單應用,當需要支持多種通信模式時,遠程過程調用并不適合。

(2)分布式對象技術

分布式對象技術支持多種通信模式,提供了一種通訊機制,透明地在異構的分布式計算環境中傳遞對象請求,而這些對象可以位于本地或遠程機器。主流的分布式對象技術有以下三種:(1)對象管理組織(Object Management Group, OMG)制定的CORBA(Common Object Request Broker Architecture,通用對象請求代理架構)技術。(2) Microsoft公司提出的DCOM(Distributed Component Object Mode,分布式組件對象模型)技術。(3)Sun公司提出的RMI(Remote Method Invocation,遠程方法調用)技術。

CORBA是OMG專門為異構平臺上不同語言開發的分布式對象進行互操作而制定的規范。是為應用開發提供一個公共框架,使得基于對象的軟件在分布異構環境下具有良好的可重用性、可移植性和互操作性,從而能夠在由多種操作系統構成的異構分布環境中,方便的建立異構分布式應用系統,或實現企業信息資源的集成。CORBA自發布以來,已經有很多實現。目前市場上流行的產品有:IONA公司的Orbix,Inprise/ Borland公司的VisiBroker等。

DCOM是由Microsoft于1996年提出的分布式對象構件標準,旨在提高應用軟件的互操作能力。COM(Component Object Model,組件對象模型)技術使得程序的各個組件之間可以用一種統一的方式進行交互,而DCOM實際上是COM技術在分布式環境中的擴展, DCOM屏蔽了COM對象的位置差異,使用戶不需知道COM對象的實際位置,就可以使用該COM對象。

RMI是Sun公司于1997年所提出的分布式計算模型,用以解決訪問Java分布式對象的通信問題。Java是一個提供了可移植的面向對象編程語言和高性能的Java虛擬機組成的應用系統運行和開發平臺。RMI能夠支持一臺Java虛擬機(JVM)上的對象與另一臺Java虛擬機(JVM)上的對象進行通信。

(3)面向消息的中間件技術

面向消息的中間件(Message-Oriented Middleware,MOM),提供了以松散耦合的靈活方式集成應用程序的一種機制。它們提供了基于存儲和轉發的應用程序之間的異步數據發送,即應用程序彼此不直接通信,而是與作為中介的MOM通信。MOM提供了有保證的消息發送,應用程序開發人員無需了解遠程過程調用(RPC)和網絡/通信協議的細節。

傳統的面向消息中間件通常采用點對點的消息傳輸結構,但在實踐中存在較多問題,此后消息中間件開始向發布/訂閱架構轉變,并成為企業應用集成中間件的一種核心機制,而基于發布/訂閱架構的消息中間件通常稱為發布/訂閱消息中間件(Publish/ Subscribe Middleware,簡稱P/S MOM)或消息代理(Message Broker)。

在基于消息代理的分布式應用系統中,消息的發送方稱為發布者,消息的接收方稱為訂閱者,發布/訂閱模型用稱為主題的內容分層結構代替了點對點模型中的惟一目的地,不同的消息通過不同的主題進行區分。發布者向消息代理發布其它應用系統感興趣的消息,而訂閱者從消息代理接收自己感興趣的消息,發布者和訂閱者之間通過消息代理進行關聯。消息代理適合于具有實時性、異步性、異構性、動態性和松耦合的應用需求。

(4) Web服務技術

Web服務提供了一種在廣域網絡上共享數據和功能的方法,是分布對象技術的重要補充。Web服務能夠通過XML消息及Internet協議完成與其他軟件應用的直接交互,它是傳統組件技術在互聯網應用環境下的延伸,其目的和作用是提供一種統一的規范和技術,為連接異構的企業應用系統提供基礎,為互聯網軟件應用提供統一的功能描述和共享機制,提供一種在不同平臺/系統之間進行應用層功能自動整合、自動化處理所需要的技術架構。

Web服務采用一套完全開放且獨立于實現平臺及程序設計語言的交互機制,形成了較為全面的協議族,其中SOAP、WSDL、UDDI以及上層面向服務組合的WS-BPEL等構成了Web服務協議族的核心。

XML語言的提出為Web服務相關標準的制訂做出了里程碑式的貢獻,目前幾乎所有的Web服務標準都建立在XML語言的基礎上。Web服務協議族最重要的是簡單對象訪問協議SOAP(Simple Object Access Propotol),它是Web服務通信的事實標準。SOAP支持應用程序與應用程序之間的通信,主要應用于商務對商務的通信以及企業應用集成。SOAP定義了如何通過軟件以獨立于各種編程語言或平臺的方式來構造消息、處理消息,從而使那些用不同編程語言編寫的程序之間具有互操作性,并能夠在不同的操作系統上運行;Web服務描述語言WSDL(Web Services Description Language)用于描述Web服務的功能調用語法。它將Web Services描述定義為一組服務訪問端點,客戶端可以通過這些服務訪問端點對包含面向文檔信息或面向過程調用的服務進行訪問(類似遠程過程調);還有跨網絡尋找網絡服務的技術——UDDI ,它提供了一組基于標準的規范用于描述和發現服務,還提供了一組基于因特網的實現。服務注冊中心存儲了描述商業或其他實體的信息及其提供的服務的相關技術調用界面(或API)。至此,以上協議的引入和發布奠定了Web服務的基礎。

由于Web服務采用基于XML的開放的Web規范技術,具有更好的封裝性、高度的可集成性以及更好的開放性與互操作性。相對于COM/DCOM,RMI和CORBA等分布式組件模型,Web服務具有松散耦合性、簡單性、高度可集成性和開放標準等特點。通過Web服務能夠屏蔽分布式系統間的差異,為跨平臺、松耦合、語言無關的網絡環境下的資源共享和集成提供了解決方案。

Web服務運行平臺為Web服務提供了運行和管理環境,實現了服務部署、執行、管理、監控等功能,使得服務能夠遵照標準的服務契約向服務消費者提供業務功能。目前,主流的開源Web服務運行平臺包括:Apache的Axis、Axis2和Apache CXF。商業Web服務平臺包括IBM 的WebSphere、Microsoft的Windows通信框架(WCF: Windows Communication Framework)、SUN的Sun GlassFish Enterprise Server等。

魏曉東,1967年畢業于天津大學精儀系。1984~1991年任安徽工業大學自動化系副教授。1991年出版

《分散型控制系統》(上??萍嘉墨I出版社)。2000~2012年任北京和利時系統工程公司副總工、事業部總設計師,北京地鐵13號線、深圳地鐵一期工程、廣州地鐵3號線綜合監控系統工程技術總負責人。2006、2010年出版《城市軌道交通自動化系統與技術》初版與第二版(電自工業出版社);2010年主編國家標準《城市軌道交通綜合監控系統工程設計規范》(GB50636-2010)《城市軌道交通綜合監控系統施工與質量驗收規范》(GB/T50732-2011);2010年主編關于兩化融合的國家標準《工業企業信息化集成系統規范》(GB/T26335-2010)。2013年至今任清華同方數字城市工程中心技術專家,住建部城市軌道交通標注技術網Eu委員會委員,全國自動化系統與集成標準技術委員會委員。

猜你喜歡
系統集成調用異構
ETC拓展應用場景下的多源異構交易系統
試論同課異構之“同”與“異”
加氫站與調壓站能源供應系統集成技術及應用
試析汽車產業智能制造中的信息化系統集成
核電項目物項調用管理的應用研究
多源異構數據整合系統在醫療大數據中的研究
系統虛擬化環境下客戶機系統調用信息捕獲與分析①
商周刊(2019年1期)2019-01-31
基于NI的硬件在環仿真系統在整車系統集成測試中的應用
全艦計算環境體系結構和系統集成框架
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合