自信息時代以來,企業及其系統正在變得更加集成,形成了行業特定的無信任網絡,區塊鏈技術將是這一發展步驟的基礎。
企業的整合
大型組織有大量應用程序在獨立孤島中運行,這些孤島需要共享數據和功能,以便以統一的方式運行。在單個組織中,將基于各種不同平臺、用不同方案建立的異構應用集成,通過建立底層結構,來聯系橫貫整個企業的異構系統、應用、數據源等,實現企業內部的 ERP、CRM、SCM、數據庫、數據倉庫,以及其他重要的內部系統之間無縫地共享和交換數據的過程稱為企業應用程序集成(EAI,Enterprise Application Integration)。
同樣,組織還需要以受控方式共享數據和功能。他們需要集成和自動化擴展到組織外部的關鍵業務流程。后者是EAI的擴展,通過使用企業對企業(B2B)集成的協議標準來交換結構化數據。
根本上,這兩個術語都指的是跨越多個系統(有時是多方)的數據和功能集成過程。這些組織中的系統和業務流程正在發展,B2B統一的技術也在不斷發展。
集成的進化
沒有哪一年,某些集成技術成為主流, 它們逐漸發展并建立在彼此之上。我們不是專注于特定的技術和年份,而是試著觀察幾十年來發生的進展,看看為什么區塊鏈是下一個技術迭代。
(集成技術的演變)
簡要探討上表中列出的每個進化步驟的主要技術進步。
數據集成
這是跨不同系統進行信息訪問的最古老的機制之一,具有以下兩個主要示例:
· 通用數據庫方法用于組織內的系統集成。
· 文件共享方法用于內部和跨組織數據交換。借助FTP等通用協議,文件共享允許交換跨機器和操作系統運行的應用程序數據。
· 但這兩種方法都是非實時的,基于批處理的集成,在可擴展性和可靠性方面存在局限性。
功能整合
雖然數據集成提供了非實時數據交換,但此處描述的方法允許實時數據和重要的功能交換:
· 遠程過程調用通過隱藏網絡和數據編組復雜性,對基于套接字的低級集成提供了重大改進。但它是早期的,依賴于語言的,點對點的客戶端 - 服務器架構。
· 對象請求代理體系結構(使用CORBA,DCOM,RMI實現)引入了代理組件,該組件允許不同語言的多個應用程序重用相同的基礎結構并以對等方式相互通信。此外,CORBA模型具有命名,安全性,并發性,事務性,注冊表和與語言無關的接口定義的概念。
· 消息傳遞引入了應用程序之間的時間解耦,并確保保證異步消息傳遞。
到目前為止,我們已經看到許多技術改進,但它們主要關注系統集成而不是應用程序集成方面。從批處理到實時數據交換,從點對點到點對點,從同步到異步,這些方法不關心或控制它們交換的數據類型,也不強制或驗證它。盡管如此,這種早期的集成基礎設施通過交換EDI格式的數據來實現B2B集成,但是在不了解數據和業務流程的情況下,它是其中的一部分。
使用CORBA,我們可以盡早嘗試接口定義,以及對應用程序集成有用的服務。
面向服務的架構
與我們的目的相關的SOA的主要方面是Web服務標準。XML提供與語言無關的數據交換格式,SOAP提供通用消息格式,WSDL提供用于描述服務接口的獨立格式,構成Web服務的基礎。這些標準與ESB和BPM實現相結合,使集成專注于業務集成語義,而現有技術主要是實現系統集成。
Web服務允許系統不盲目地交換數據,而是擁有機器可讀的合同和接口定義。此類合同將允許系統在與其他系統交互之前理解和驗證數據(最多一定程度)。
我還在這里包含了微服務架構風格,就其核心而言,它構建并改進了SOA和ESB。此階段的主要演變是圍繞分布式系統分解以及從WS到基于REST的交互的過渡。
總之,這是一個階段,在通用協議之上,分布式系統也獲得了通用標準和合同定義。
基于區塊鏈的集成
雖然通過通用協議和標準交換數據有所幫助,但服務合同無法提供有關隱藏在合同背后并在遠程系統上運行的業務流程的信息。請求可能根據合同有效,但根據業務流程的當前狀態無效。當在兩方之間進行集成時,如在客戶端 - 服務器模型中,但在對等模型中的多個同等參與方之間進行集成時,這甚至更成問題。
有時多方是同一業務流程的一部分,由任何一方而非所有各方擁有。這種多方互動正常運作的先決條件是共同業務流程及其當前狀態的透明度。所有這一切使得區塊鏈技術對于在多方之間實施分布式業務流程非常有吸引力。
此模型擴展了共享協議和服務契約與共享業務流程和包含狀態的使用。使用區塊鏈,所有參與實體以智能合約的形式共享相同的業務流程。但是為了驗證請求,處理并得出相同的結論,業務流程也需要相同的狀態,這是通過分布式總賬實現的。共享智能合約的所有過去狀態本身并不是目標,而是共享業務流程運行時的先決條件。
從這個角度來看,區塊鏈可以被視為整合進化的下一步。正如我們將在下面看到的,區塊鏈網絡充當一種分布式ESB和BPM機制,它們不包含在單個業務實體中,而是跨越多個組織。
(集成技術進入系統之間的空間)
首先是協議(如FTP),然后是API契約(WSDL,SOAP),現在業務流程本身(智能合約)及其數據正在移出組織之外,進入公共共享空間,并成為集成的一部分基礎設施。在某些方面,這種趨勢類似于微服務的交叉責任如何從服務內部轉移到支持平臺。
通過區塊鏈,通用數據模型和現在的業務流程正在從組織轉移到共享業務網絡中。需要注意的是,此舉并非普遍適用,并且不太可能成為主流整合機制。只有當網絡中的所有參與者對數據模型和業務流程具有相同的理解時,才有可能采取這種行動; 因此,它僅適用于流程可以標準化的某些行業,如金融,供應鏈,醫療保健等。
幾代人的整合
完成了一些按時間順序排列的技術進展后,讓我們更全面地了解B2B集成演變及其主要階段。
第一代:系統集成協議
這是在CORBA和SOA之前生成集成技術,主要是通過通用協議進行數據交換,但不了解數據,合同和業務流程:
· 集成模型: 客戶端 - 服務器,其中服務器組件僅由一方控制; 示例是數據庫,文件服務器,消息代理等。
· 顯式的共享基礎架構:低級系統協議和FTP等API。
· 隱式而非共享基礎架構:應用程序合同,數據格式,業務流程不屬于通用集成基礎架構。
第二代:應用程序集成合同
這一代集成技術使用前幾年的系統協議,允許應用程序以通用合同的形式共享其API。這是下一級集成,其中兩個應用程序都了解數據,其結構,可能的錯誤條件,但不了解其他系統中的業務流程和當前狀態:
· 集成模型: 具有合同描述的API的客戶端 - 服務器模型。
· 顯式的共享基礎架構:協議,應用程序合同和API定義。
· 隱式而非共享基礎架構:業務流程和遠程狀態仍然是私有的。
第三代:分布式業務流程
基于區塊鏈的生成仍然需要證明自己是一個可行的企業架構,更進了一步。它使用對等協議,并在多個系統之間共享業務流程,這些系統由不相互信任的各方控制。雖然之前的集成需要共享對協議或API的理解,但這依賴于對完整業務流程及其當前狀態的共同理解。只有這樣才能形成跨組織的分布式業務流程網絡才有意義并付出代價:
· 集成模型: 通過與分布式業務流程形成業務網絡,實現多方,點對點集成。
· 顯式的共享基礎架構:業務流程及其所需的狀態。
· 隱式而非共享基礎架構:其他非流程相關狀態。
有許多基于區塊鏈的項目采用不同的方法來解決業務集成挑戰。具體來說,這里的訂單是針對B2B集成空間的一些最受歡迎和最有趣的許可開源區塊鏈項目:
· Hyperledger Fabric是最受歡迎和最先進的區塊鏈框架之一,最初由IBM開發,現在是Linux Foundation的一部分。
· Hyperledger Sawtooth是由英特爾最初開發的另一個Linux Foundation分布式項目。它以其模塊化和完整的組件可更換性而廣受歡迎。
· Quorum是一個以企業為中心的以太坊分銷。
· Corda是另一個基于現有基于JVM的中間件技術構建的項目,使組織能夠與合同進行交易并交換價值。
已經有許多使用上述項目構建的業務網絡,使網絡成員組織能夠使用這種新的集成模型相互集成和交互。
除了提供網絡節點的這些全棧區塊鏈項目之外,還有混合方法。例如,Unibright是一個項目,旨在通過自動生成智能合約,將熟悉的標準(如BPMN)中定義的內部業務流程與現有的區塊鏈網絡連接起來。可以為公共或私人區塊鏈生成智能合約,這可以作為組織之間的另一個整合支柱。
最近,在許多生活領域中有許多區塊鏈實驗。雖然公共區塊鏈通過承諾改變世界而產生所有炒作,但私人和許可的區塊鏈承諾較少,但正在穩步前進。
結論
企業集成有多重細微差別。組織內部的集成挑戰,其中所有系統由一個實體控制,參與者彼此之間具有某種程度的信任,主要由現代ESB,BPM和微服務架構解決。但是,當談到多方B2B集成時,還存在其他挑戰。這些系統由多個組織控制,無法查看業務流程,也不相互信任。在這些場景中,我們看到組織試驗了一種新的基于區塊鏈的技術,這種技術不僅依賴于協議和合同的共享,還依賴于端到端業務流程和狀態的共享。
這種趨勢與多年來不斷發展的總體方向一致:從共享最低限度的協議,到以合同,API和現在業務流程的形式共享和展示越來越多。
這種共享集成基礎架構支持新的透明集成模型,其中先前的私有業務流程現在使用開源協作模型共同擁有,同意,構建,維護和標準化。這可以激勵組織共享業務流程并形成網絡,從而進一步受益于聯合創新,標準化和更深層次的整合。
編譯者:桂花同酒
原作者:Bilgin Ibryam,Red Hat(紅帽公司,NYSE:RHT)的首席架構師
網上經營許可證號:京ICP備18006193號-1
copyright?2005-2022 www.ayzwhls.com all right reserved 技術支持:杭州高達軟件系統股份有限公司
服務熱線:010-59231580