-------國產自主可控消息中間件--------
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優勢:
? 降低系統耦合性、提高健壯性
? 屏蔽異構系統的復雜性
? 屏蔽網絡通信細節
? 提高應用伸縮性
? 加快應用的開發,減少技術負擔
? 跨操作系統