中間件技術的思想、概念、分類及面臨問題

發表于:2008-04-24來源:作者:點擊數: 標簽:中間件概念思想
關鍵字:思想 概念 一、為什么要中間件 計算機技術迅速發展。從硬件技術看,CPU速度越來越高,處理能力越來越強;從軟件技術看,應用程序的規模不斷擴大,特別是Inte .net 及WWW的出現,使計算機的應用范圍更為廣闊,許多應用程序需在 網絡 環境的異構平臺上
關鍵字:思想 概念      一、為什么要中間件

    計算機技術迅速發展。從硬件技術看,CPU速度越來越高,處理能力越來越強;從軟件技術看,應用程序的規模不斷擴大,特別是Inte.net及WWW的出現,使計算機的應用范圍更為廣闊,許多應用程序需在網絡環境的異構平臺上運行。這一切都對新一代的軟件開發提出了新的需求。在這種分布異構環境中,通常存在多種硬件系統平臺(如PC,工作站,小型機等),在這些硬件平臺上又存在各種各樣的系統軟件(如不同的操作系統、數據庫、語言編譯器等),以及多種風格各異的用戶界面,這些硬件系統平臺還可能采用不同的網絡協議和網絡體系結構連接。如何把這些系統集成起來并開發新的應用是一個非?,F實而困難的問題。

  二 什么是中間件

  為解決分布異構問題,人們提出了中間件(middleware)的概念。中間件是位于平臺(硬件和操作系統)和應用之間的通用服務,如圖1所示,這些服務具有標準的程序接口和協議。針對不同的操作系統和硬件平臺,它們可以有符合接口和協議規范的多種實現。

  也許很難給中間件一個嚴格的定義,但中間件應具有如下的一些特點:

  滿足大量應用的需要
  運行于多種硬件和OS平臺
  支持分布計算,提供跨網絡、硬件和OS平臺的透明性的應用或服務的交互
  支持標準的協議
  支持標準的接口

  由于標準接口對于可移植性和標準協議對于互操作性的重要性,中間件已成為許多標準化工作的主要部分。對于應用軟件開發,中間件遠比操作系統和網絡服務更為重要,中間件提供的程序接口定義了一個相對穩定的高層應用環境,不管底層的計算機硬件和系統軟件怎樣更新換代,只要將中間件升級更新,并保持中間件對外的接口定義不變,應用軟件幾乎不需任何修改,從而保護了企業在應用軟件開發和維護中的重大投資。

  三、主要中間件的分類

  中間件所包括的范圍十分廣泛,針對不同的應用需求涌現出多種各具特色的中間件產品。但至今中間件還沒有一個比較精確的定義,因此,在不同的角度或不同的層次上,對中間件的分類也會有所不同。由于中間件需要屏蔽分布環境中異構的操作系統和網絡協議,它必須能夠提供分布環境下的通訊服務,我們將這種通訊服務稱之為平臺?;谀康暮蛯崿F機制的不同,我們將平臺分為以下主要幾類:

  遠程過程調用(Remote Procedure Call)
  面向消息的中間件(Message-Oriented Middleware)
  對象請求代理(Object Request Brokers)

  它們可向上提供不同形式的通訊服務,包括同步、排隊、訂閱發布、廣播等等,在這些基本的通訊平臺之上,可構筑各種框架,為應用程序提供不同領域內的服務,如事務處理監控器、分布數據訪問、對象事務管理器OTM等。平臺為上層應用屏蔽了異構平臺的差異,而其上的框架又定義了相應領域內的應用的系統結構、標準的服務組件等,用戶只需告訴框架所關心的事件,然后提供處理這些事件的代碼。當事件發生時,框架則會調用用戶的代碼。用戶代碼不用調用框架,用戶程序也不必關心框架結構、執行流程、對系統級API的調用等,所有這些由框架負責完成。因此,基于中間件開發的應用具有良好的可擴充性、易管理性、高可用性和可移植性。

  下面,針對幾類主要的中間件分別加以簡要的介紹。

  1、遠程過程調用

  遠程過程調用是一種廣泛使用的分布式應用程序處理方法。一個應用程序使用RPC來“遠程”執行一個位于不同地址空間里的過程,并且從效果上看和執行本地調用相同。事實上,一個RPC應用分為兩個部分:server和client。server提供一個或多個遠程過程;client向server發出遠程調用。server和client可以位于同一臺計算機,也可以位于不同的計算機,甚至運行在不同的操作系統之上。它們通過網絡進行通訊。相應的stub和運行支持提供數據轉換和通訊服務,從而屏蔽不同的操作系統和網絡協議。在這里RPC通訊是同步的。采用線程可以進行異步調用。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97