未來五年 基礎軟件走向深度融合
中間件是伴隨著網絡應用的發展而逐漸成長起來的技術體系。最初的中間件發展驅動力是需要有一個公共的標準的應用開發平臺來屏蔽不同操作系統之間的環境和API差異,也就是所謂操作系統與應用程序之間“中間”的這一層叫中間件。但隨著網絡應用的需求,解決不同系統之間的網絡通信、安全、事務的性能、傳輸的可靠性、語義的解析、數據和應用的整合這些問題,變成中間件的更重要的驅動因素。因此,相繼出現了解決網絡應用的交易中間件、消息中間件、集成中間件等各種功能性的中間件技術和產品。
現在,中間件已經成為網絡應用系統開發、集成、部署、運行和管理必不可少的工具。由于中間件技術涉及網絡應用的各個層面,涵蓋從基礎通訊、數據訪問到應用集成等眾多的環節,因此,中間件技術呈現出多樣化的發展特點。
傳統中間件在支持相對封閉、靜態、穩定、易控的企業網絡環境中的企業計算和信息資源共享方面取得了巨大成功,但在新時期以開放、動態、多變的互聯網(Internet)為代表的網絡技術沖擊下,還是顯露出了它的固有局限性,如功能較為專一化,產品和技術之間存在著較大的異構性,跨互聯網的集成和協同工作能力不足,僵化的基礎設施缺乏隨需應變能力等等,在互聯網計算帶來的巨大挑戰面前顯得力不從心,時代要求新的技術變革。
中間件技術的發展方向,將聚焦于消除信息孤島,推動無邊界信息流,支撐開放、動態、多變的互聯網環境中的復雜應用系統,實現對分布于互聯網之上的各種自治信息資源(計算資源、數據資源、服務資源、軟件資源)的簡單、標準、快速、靈活、可信、高效能及低成本的集成、協同和綜合利用,提高組織的IT基礎設施的業務敏捷性,降低總體運維成本,促進IT與業務之間的匹配。中間件技術正在呈現出業務化、服務化、一體化、虛擬化等諸多新的重要發展趨勢。
1. 業務化:中間件正在“變厚變寬”
中間件的本質特征是對計算環境的抽象和對應用共性的凝煉。十年來,中間件的發展多在計算環境的抽象上。目前的中間件可以在不同操作系統、不同網絡環境下提供各種應用服務。
中間件變寬變厚
越來越多的網絡應用將被抽象形成標準的平臺服務,加入到中間件之中,成為重要的技術特征。
業務化代表了中間件對復雜業務支持方面的發展趨勢,即,從自底向上技術驅動轉變為更多自頂向下的應用層的業務驅動,凝練更多的應用和業務模式,支持復雜業務的開放式多方協同和按需集成能力。
眾所周知,對組織而言,通過IT對信息進行有效的管理及利用是其業務成功的關鍵因素,IT是要為業務服務的。中間件技術作為企業計算的核心基礎設施之一,僅僅關注技術本身是不夠的,尤其是在當今全球化趨勢之中謀求生存和發展,IT信息系統及其基礎設施對戰略和業務的有效支持是至關重要的。因此,作為共性的凝練,中間件不僅要從底層的技術入手,將共性技術的特征抽象進中間層,還要更多地把目光投向到業務層面上來,根據業務的需要,驅動自身能力的不斷演進,即,不斷出現的新的業務需要驅動了應用模式和信息系統能力的不斷演進,進而要求中間件不斷地凝練更多的業務共性,提供針對性支撐機制。近年來,這一需求趨勢愈發明顯,越來越多的業務和應用模式被不斷地抽象進入中間件的層次,如業務流程流、業務模型、業務規則、交互應用等等,其結果是中間件凝練的共性功能越來越多,形象的看,中間件的發展趨勢之一就是變得越來越“厚”。
此外,在以互聯網為代表的新技術推動下,伴隨全球化的腳步以及國民經濟和國家信息化建設的高速發展,企業/政府的業務合作和資源共享的廣度、深度和頻度都在不斷的拓展,企業競爭本身已經從單純的個體間行為演變為產業鏈層面上的激烈競爭,而電子商務的建設也呈現出從邊沿向縱深的發展趨勢。企業信息化在ERP打破企業內部界限,形成企業內部無邊界信息流的情況下,全程電子商務將實現企業、伙伴、供應商和客戶的互聯互通,打破企業間的界限,形成跨行業/組織/部門之間無邊界信息流,復雜業務協同往往需要將原本零散、片段的業務流程(人工/自動)和信息優化進一個集成的環境,多個業務實體在互聯網提供的廣泛連通性基礎之上進行開放、靈活、可信的信息交換和互操作,實現企業間的業務協同,及時響應變化并有效的支持業務戰略的交付,從而快速形成新的競爭力優勢。因此,從支持基于互聯網廣泛連通性的復雜業務協同和集成的角度來看,形象地說,中間件的另一發展趨勢是變得越來越“寬”。
2. 服務化:中間件將面向服務,易于集成
服務化代表了中間件在提升IT基礎設施的業務敏捷性方面的發展趨勢,即支持對基于互聯網的數據存儲、軟件和服務資源進行標準化的抽象和能力提供,橋接不同業務平臺之間的技術異構性,并提供業務按需靈活組織的能力,讓IT與業務密切匹配,提升組織的業務敏捷性。
企業最根本的痛點在于其易變的業務和僵化的IT基礎設施之間的尖銳矛盾。業務的易變性是企業試圖通過業務差異化而謀求利益最大化的必然結果,是激烈的市場競爭的產物。問題在于,企業常常發現:業務需要改變,但IT卻不能迅速地加以響應。為什么?根本原因就在于目前最重要的軟件開發技術上存在著嚴重問題未能解決。
解決這些問題,技術的本質是復用、松耦合、互操作(標準)等軟件技術的內在機制。軟件復用,即軟件的重用,也叫再用,是指同一事物不作修改或稍加改動就多次重復使用。從軟件復用技術的發展來看,就是不斷提升抽象級別,擴大復用范圍。最早的復用技術是子程序,人們發明子程序,就可以在不同系統之間進行復用了。但是,子程序是最原始的復用,因為這種復用范圍是一個可執行程序內復用,靜態開發期復用,如果子程序修改,意味著所有調用這個子程序的程序必須重新編譯、測試和發布。
抽取分布系統構造中的共性問題,封裝這些共性問題的解決機制,對外提供簡單統一的接口,從而減少開發人員在解決這些共性問題時的難度和工作量。因此,其顯著特點之一就是自底向上的技術導向,它典型地是對操作系統、網絡、編程語言等基礎軟件能力的抽象和封裝,其關注主要聚焦于分布式應用構建的技術細節。
復用對象 | 復用范圍 |
子程序 | 一個可執行程序內復用,靜態開發期復用 |
組件(DLL,Com等) | 系統內復用,動態運行期復用 |
企業對象組件(Com+,.NET,EJB等) | 企業網絡內復用,不同系統之間復用 |
服務 <(如WebService,SCA/SDO) | 不同企業之間,全球復用,動態可配置 |
為了解決這個問題,發明了組件(或者叫控件),如MS操作系統下的DLL組件。組件將復用提升了一個層次,因為組件可以在一個系統內復用(同一種操作系統),而且是動態、運行期復用。這樣組件可以單獨發展,組件與組件調用者之間的耦合度降低。
為解決分布式網絡計算之間的組件復用,人們發明了企業對象組件,如(Com+,.NET,EJB等),或者叫分布式組件。通過遠程對象代理,來實現企業網絡內復用,不同系統之間復用。
傳統中間件的核心是組件對象的管理。但分布式組件也是嚴重依賴其受控環境,由于構件實現和運行支撐技術之間存在著較大的異構性,不同技術設計和實現的構件之間無法直接組裝式復用。
而現代中間件的發展重要趨勢就是以服務為核心,如WebService,SCA/SDO等。通過服務,或者服務組件來實現更高層次的復用、解耦和互操作,即SOA架構中間件。
因為服務是通過標準封裝,服務組件之間的組裝、編排和重組,來實現服務的復用。而且這種復用,可以在不同企業之間,全球復用,達到復用的最高級別,并且是動態可配置的復用。
SOA架構在松耦合,將中間件的解耦過程也發展到了最后的境界。傳統軟件將軟件之中核心三部分網絡連接、數據轉換、業務邏輯全部耦合在一個整體之中,形成“鐵板一塊”的軟件,“牽一發而動全身”,軟件就難以適應變化。分布式對象技術將連接邏輯進行分離,消息中間件將連接邏輯進行異步處理,增加了更大的靈活性。消息代理和一些分布式對象中間件將數據轉換也進行了分離。而SOA架構,通過服務的封裝,實現了業務邏輯與網絡連接、數據轉換等進行完全的解耦。
軟件技術的不斷解耦的過程
軟件互操作技術也存在問題。互聯網前所未有的開放性意味著各節點可采用不同的中間件技術,對技術細節進行了私有化的約束,構件模型和架構沒有統一標準,從而導致中間件平臺自身在構件描述、發布、發現、調用、互操作協議及數據傳輸等方面呈現出巨大的異構性。各種不良技術約束的結果是軟件系統跨互聯網進行交互變得困難重重,最終導致了跨企業/部門的業務集成和重組難以靈活快速的進行。
在軟件的互操作方面,傳統中間件只是實現了訪問互操作,即通過標準化的API實現了同類系統之間的互操作,而連接互操作還是依賴于特定的訪問協議,如JAVA使用RMI,CORBA使用IIOP等。而SOA通過標準的、支持Internet、與操作系統無關的SOAP協議實現了連接互操作。而且,服務的封裝是采用XML協議,具有自解析和自定義的特性,這樣,基于SOA的中間件還可以實現語義互操作。
基于服務的中間件
因此,下一代的中間件將在軟件的模型、結構、互操作以及開發方法等四個方面進行優化:
模型:構件模型彈性粒度化,即通過抽象層度更高的構件模型,實現具備更高結構獨立性、內容自包含性和業務完整性的可復用構件,即服務。并且在細粒度服務基礎上,提供了更粗粒度的服務封裝方式,即業務層面的封裝,形成業務組件,就可以實現從組件模型到業務模型的全生命周期企業建模的能力。
結構:結構松散化,即,將完整分離服務描述和服務功能實現以及服務的使用者和提供者,從而避免分布式應用系統構建和集成時常見的技術、組織、時間等不良約束。
互操作:交互過程標準化,即,將與互操作相關的內容進行標準化定義,如服務封裝、描述、發布、發現、調用等契約,通信協議以及數據交換格式等等。最終實現訪問互操作、連接互操作和語義互操作。
開發集成方法:應用系統的構建方式由代碼編寫轉為主要通過服務間的快捷組合及編排,完成更為復雜的業務邏輯的按需提供和改善,從而大大簡化和加速應用系統的搭建及重構過程。
總之,服務化體現的是中間件在完整業務復用、靈活業務組織方面的發展趨勢,其核心目標是提升IT基礎設施的業務敏捷性。因此,中間件將成為SOA的主要實現平臺。
3. 一體化:易于平臺演化、易于開發、易于管理
一體化代表了種類繁多、功能相對單一的中間件產品趨向集成和整合,形成統一的互聯網計算平臺的發展趨勢。
傳統的中間件產品以各自問題域為核心形成了多種專門的中間件產品,如事務(交易)中間件、應用服務器、消息中間件、集成中間件等。伴隨著信息技術的發展,不同種類和廠商的中間件產品同時運行在Internet之上,共同組成了大規模關鍵網絡應用系統的基礎設施。這些核心關鍵業務應用,涉及的功能需求廣泛,功能單一的中間件產品已不足以完全滿足全部需求。客戶需要一種開放的集成化中間件平臺,更好的適應互聯網計算環境的開放、動態、多變的特性。因此,種類繁多的中間件產品不可避免的需要走向整合。
在一體化的趨勢中,未來集成化的統一中間件平臺所包含的各類中間件子產品共同組成了一個相互關聯的有機整體,這種“集成化”,絕非簡單拼湊,而是一種深度整合,具體體現在以下幾個方面:
3.1. 統一內核的產品體系結構,易于演化
集成化的統一中間件平臺必須具備良好的可擴展性和更加有效的應用環境。而使用微內核設計是構建中間件產品可靈活插拔的統一中間件平臺的重要基礎。
集成統一中間件平臺需要整合多種中間件產品,因此其內部功能必然龐大而復雜,為了減少復雜性和提高可擴展性,其內部結構的微內核化將是必然趨勢,微內核負責協調多個中間件產品的功能,通過微內核體系可以減少平臺內部接口的復雜性,實現更加健壯的結構,并提供更加穩定高效的運行期表現。使用靈活的微內核設計,新的中間件產品加入以及舊的中間件產品的廢棄,都可以非常方便的進行,而無需對整個平臺系統進行根本性的變動。
統一中間件微內核
微內核將提供中間件最核心的線程服務、通信服務、資源服務和事務服務,微內核的可動態組件化的中間件結構,對于中間件的整合和發展是非常重要的技術路線。
目前許多傳統的中間件還是基于C語言開發的中間件和Java語言的中間件在整合的階段。部分廠商(如BEA/Oracle和金蝶APUSIC)在JAVA平臺上已經實現了統一微內核的中間件產品結構體系,這將是未來中間件產品形態上的重要趨勢。
3.2. 統一的系統管理框架,易于管理
首先,集成化的統一中間件平臺的管理必須具備全局的、系統化的。在一個大型網絡應用中,往往會同時存在多種中間件以及同一中間件的多個實例,此時,平臺的管理具有典型的系統化特性,那些僅針對單個中間件實例或類型的管理,其效果可能不明顯甚至產生嚴重的負面影響。而只有全局考察系統,統籌分析和規劃,才能制定出合理有效的管理方案。同時,平臺的管理還必須兼顧中間件產品之間存在的開放、異構、動態等特性。開放性意味著不同業務需求導致各種各樣中間件產品運行在開放的互聯網之上,需要提供有效手段使得這些中間件產品被有效地管理起來,形成一個有機整體。異構性意味著不能指望平臺中所有的中間件都是同類型的產品實例,需要一些方法來平滑地橋接異構性,降低異構性控制的復雜度和難度。動態性意味著平臺中的中間件可以在任何時候被人為地增刪,或者在任何時候由于意外原因而變得不可用,這就要求管理機制必須足夠靈活以應對被管理的中間件及其實例的快速、持續的變化性。
中間件的一體化管理也是通過將管理模型服務化,通過服務封裝來統一管理的對象、行為和反饋,通過服務的編排來實現管理的對象可動態進行自適應。
中間件的內部管理,也將在集成一體化的環境下,實現動態的調度,并實現對資源的虛擬化后,實現可自適應和自感知,并能夠實現自我優化。
統一中間件管理模型
3.3. 統一的編程模型,易于開發
眾所周知,不同種類的中間件產品所提供構件模型是不同的,它們的部署機制也各有差異。這種構件模型的差異性,將會增加開發難度,提高學習與維護成本,給用戶帶來巨大的困擾。因此,有必要提供一種統一的編程模型來完成用戶的業務邏輯,而這種統一的編程模型能夠根據不同中間件種類,發布成符合該中間件要求的格式,并具備一致的部署機制;并且,這種發布與轉換對用戶來說應該是透明的,這將給用戶帶來巨大的價值。
統一中間件編程模型
目前不同類型的中間件產品一般都有各自不同的開發環境,而當今大規模網絡應用大都需要多種中間件產品的共同支撐,因此,開發環境的差異性導致了用戶開發、管理、監控的難度大大加深。中間件在為用戶提供統一運行支撐平臺的同時,也需要為用戶提供統一的集成開發環境。這種集成開發環境顯然不能僅僅是各類中間件開發管理工具的簡單拼湊,而應該是概念統一,功能互通的有機整體。基于服務,面向SOA的中間件提供了采用服務模型來實現統一編程模型的可行性。
3.4. 統一的互操作協議
現今,越來越多的企業應用呈現出互聯網化。Internet正在完成從一個信息發布與訪問平臺到應用計算基礎支撐平臺的轉變。傳統中間件基于Intranet或私有協議的通信方式變得難以適應Internet開放、動態、易變的環境。因此,運行于互聯網環境上的各種中間件產品應提供基于http協議的,安全可信的,具有自適應能力的統一互操作協議。而中間件產品本身的管理、監控等互操作API,以及部署在其上的企業應用的業務接口,則以標準服務形式基于這種統一互操作協議發布,使多個運算節點得以在互聯網上形成有機整體,實現更大范圍的互聯互通,隨需應變。
簡言之,一體化代表了中間件從單一功能性產品到互聯網統一平臺的重要發展趨勢。
4. 虛擬化:支持云計算,易于應用交付
虛擬化是實現資源整合的一種非常重要的技術手段。早期小型機和大型機通過硬件和操作系統的分區技術(Partition)實現了資源的有效利用,優化調度和分配。通過集群技術(Cluster)實現了多臺服務器虛擬為一臺服務器,來實現負載的均衡和高可用性,以及解決性能的可伸縮性問題。
云計算代表網絡計算價值的一個新的臨界點,它提供更高的效率、更好的可擴展性和更容易的應用交付模式。云計算不僅實現硬件資源的虛擬化,還通過服務平臺實現服務的虛擬化,數據的虛擬化,以及軟件交付模式的虛擬化。
伴隨互聯網及現代服務業的發展,IT基礎能力以服務的形式提供已成為一種新的趨勢,SaaS、PaaS、MaaS等新業務模式不斷涌現。然而,支撐這些XaaS業務模式的核心技術最終均離不開云計算。云計算平臺作為一種實現計算能力動態分配的新技術平臺,將構成未來數據中心大規模應用的基礎,是中間件技術發展的重要趨勢。
云計算需要實現軟硬件資源的虛擬化管理,支持應用計算資源的動態加載和管理,提供不同應用間的實例級隔離,并且能夠實現大規模應用集群及大規模事務處理。虛擬化是適用于所有云架構的一種基礎性設計技術。在云計算中,它主要指平臺虛擬化,或者是從使用資源的人和應用程序對物理 IT 資源的抽象作用。虛擬化允許將服務器、存儲設備和其他硬件視為一個資源池,而不是離散系統,這樣就可以根據需要來分配這些資源。因此,作為云計算平臺的中間件,其應用的目標將是有效的統一后端的服務器的軟/硬件資源。
在新一代中間件技術發展的理念中,虛擬化和服務化相結合是非常重要的特征。二者相輔相成,相互促進,結合使用,能夠在組織的IT架構和業務轉型的過程中發揮最大的優勢。服務化關注的是業務驅動的IT基礎設施的綜合應用,注重業務流程的靈活性;虛擬化關注的是運行時部署的效率,注重能力提供的方便性和合理性。虛擬化有助于更快地顯示部署基礎設施的投資回報率(ROI)。從服務化的角度來看,虛擬化是一種把 IT 資源當作服務來提供的手段。幾乎所有 IT 資源都可以作為虛擬的云服務來提供:應用程序、計算能力、存儲容量、聯網、編程工具,以至于通信服務和協作工具。虛擬化的基礎設施能夠更有效的支持大量的現有服務和資產,從而促使組織更為深刻和廣泛的進行服務化轉型和改造。即,虛擬化可以提高服務部署環境的使用率,降低服務部署的總成本,繼而通過關聯效應,降低服務化建設的總成本。它提供更高的效率、巨大的可擴展性和更快、更容易的軟件開發。
同時,虛擬化自身也會帶來很多的具體的優勢,通過計算資源的動態分配,能夠更加有效地利用組織的軟/硬件資源,優化組織的資源模型,實現靈活敏捷的資源部署,促進計算資源的整合,提高其利用率,節約空間和能源,并為災難恢復解決方案提供新的選項。
云計算中間件
簡言之,虛擬化著眼于計算資源運行時部署的效率,其有效利用和成本控制,注重資源提供的方便性和合理性,代表了今后相當長的一段時間內中間件技術發展的重要趨勢。
5. 后端平臺深度融合
未來的中間件將是Internet時代網絡計算的核心基礎平臺,它貼近并直接服務于應用系統,提供完整而強大的基礎設施支撐能力,屏蔽了極端開放、動態、多變互聯網環境中底層操作系統、編程語言、數據庫系統、網絡通信的多樣性和差異性,凝練更多業務/應用模式的共性,橋接跨互聯網的巨大技術異構性,真正建立起基于互聯網的空前廣泛的連通性,并實現基礎設施提供方式的動態化、標準化、彈性化和最優化。
一個大膽的設想是未來五年,瀏覽器將統一前端,而后端平臺(中間件、操作系統、數據庫)走向深度融合。
綜上所述,中間件是互聯網時代的IT基礎設施,提供業務的靈活性,消除信息孤島,提高IT的研發和運營效率。作為網絡計算的核心基礎設施,中間件正在呈現出服務化、自治化、業務化、一體化等諸多新的發展趨勢,中間件將進入2.0時代,將極大提升互聯網統一計算平臺的“敏、睿、融、和”能力。
- 丹東華宇儀器有限公司 2023-03-03
- ,丹東華宇儀器有限公司給大家拜年 2023-03-03
- 丹東華宇儀器有限公司網站新版現已完成 2023-03-03
- 提供更好的平均粒度儀 2023-03-03
- 公司經理羅總到崇義章源鎢業有限公司,與章經理進行技術交流 2023-03-03
- 新年新機遇 國產儀器儀表需再次“發力” 2023-03-03