DDS(Data Distribution Service) 什麼鬼?
檢視wiki等,學術解釋是:資料分發服務的實時系統(DDS)是物件管理組織(OMG)的一個標準,旨在解決機器對機器(有時也被稱為中介軟體)的可擴充套件性,實時,可靠,高效能和可互操作的 資料交換使用釋出 - 訂閱模式。DDS解決了金融交易,空中交通管制,智慧電網管理和其他大資料等應用的需求應用。該標準用於智慧手機作業系統[1],運輸系統和車輛[2], 軟體無線電以及醫療保健提供商等應用。DDS被推廣用於物聯網。
理解DDS的關鍵是釋出-訂閱模式。DDS的源頭是美軍的資料鏈,早期的資料鏈,資料種類和格式繁多,通訊方式也五花八門,沒有統一的資料標準,導致的後果可想而知。DDS的高明之處在於從資料根本需求出發(而不是以訊息通訊為需求),提出了釋出-訂閱模式,然後據此制定標準,而遮蔽了各艦船和飛機等的技術細節。
舉個例子,以A,B方商定活動日期來說明以訊息為中心和以資料為中心方式的不同。
訊息為中心 | 資料為中心 |
A:在3/23日去爬惠山可以嗎? B:可以啊(更新日曆安排) A:哎呀,3/23日要學習,那3/20日怎樣? B:OK,( 又更新日曆) A:好像4/1日好點,之前都下雨 B:好吧(又…) A:爬好惠山,我們去公園賞花,時間長點行嗎? B:不行,要不我們提前半小時出發? A:OK, 決定了 | 釋出:3/23 8:00日爬惠山 更改:3/20 8:00日爬惠山 更改:4/1 8:00日爬惠山 更改:4/1 8:00日爬惠山+賞花 更改:4/1 7:30日爬惠山+賞花 |
可以想像的是,如果爬山群有100多人的話,群主通過訊息通知的話,得有多麻煩。
理解了以資料為中心的釋出-訂閱模式,那對DDS模型得基礎就掌握了一半,因為DDS的設計和建模,都是針對這一模式進行,當然還得有一些其他特性,如實時Qos,大規模擴充套件和安全等。
關於DDS更細的介紹,可以檢視OMG的Overview of the OMG Data Distribution Service
https://download.csdn.net/download/seacracker/10278727
https://download.csdn.net/download/seacracker/10278722