DDS消息中間件

2020-12-22 17:33:21

                 -------國產自主可控消息中間件--------

DDS (Data Distribution Service) 數據分發服務技術最早應用于美國海軍,用于解決艦船復雜網絡環境中大量軟件升級的兼容性問題,目前已經成為美國國防部的強制標準。

應美國工業部門的要求,OMG(對象管理組織)2003年開始制訂支持高性能實時系統的數據分發服務DDS(Data Distribute Service)規范,并于2004年完成第一版?,F行標準是2007年制定的v1.2

DDS 目前已經廣泛應用于國防、民航、工業控制等領域,成為分布式實時系統中數據發布/訂閱的標準解決方案。DDS 技術是基于以數據為核心的設計思想提出的,定義了描述網絡環境下數據內容、交互行為和服務質量要求的標準。

FogBus DDS(數據分發服務)是以數據為中心的網絡通信模型,是一套支持發布\訂閱模式的應用程序接口(API)??蓮V泛應用于航空、國防、分布式仿真、工業自動化、分布式控制、機器人、電信多個領域。

產生背景:

過去應用程序之間通過網絡傳遞數據,在需要通信的兩個應用程序都兩兩各自建立連接進行數據傳遞。存在系統復雜度高、耦合程度高、脆弱難以擴展和維護的問題

為了改變上述狀況,出現了另一種通信模式,通過一臺中心服務器進行互聯互通。這種方式降低了系統復雜度、降低了耦合程度。但是存在單點失效和中心節點成為性能瓶頸的問題。

為解決國防和航天領域數據分發系統面臨的這些挑戰,由OMG(對象管理組織)提出DSS通信模型并標準化。進一步降低了分布式系統程序之間的耦合性和系統復雜度,提高系統健壯性、伸縮性、可擴展性。

解耦性特點:

(1)  空間解耦(Space Decoupling)

即發布者和訂閱者之間無需知道對方的地址和存在。發布者只需要發布它所能提供的數據,而訂閱者只需要接收它所感興趣的數據,發布者和訂閱者之間并沒有直接的聯系,不需要事先知道對方的地址和端口號等信息。

 (2) 時間解耦(Time Decoupling)

即發布者和訂閱者無需同時處于就緒狀態。在發布者發布數據時,訂閱者可能沒有在線;當發布者下線之后,訂閱者還可能收到相應的發布者所發布的數據。

(3)  數據流解耦(Flow Decoupling)

即發布者和訂閱者的主進程是異步的,不需要阻塞。發布者在發布數據時,自身不必阻塞;訂閱者在接收所感興趣的數據時也不必將自身阻塞,而是可以同時進行其它的操作。

DDS構架:

 DDS優勢:

? 降低系統耦合性、提高健壯性

? 屏蔽異構系統的復雜性

? 屏蔽網絡通信細節

? 提高應用伸縮性

? 加快應用的開發,減少技術負擔

? 跨操作系統

 

性夜影院爽黄e爽