【金沙国际】(中国)有限公司

DDS消息中间件

2020-12-22 17:33:21

                 -------国产自主可控消息中间件--------

DDS (Data Distribution Service) 数据分发服务技术最早应用于美国海军,用于解决舰船复杂网络环境中大量软件升级的兼容性问题,目前已经成为美国国防部的强制标准。

应美国工业部门的要求,OMG(对象管理组织)2003年开始制订支持高性能实时系统的数据分发服务DDS(Data Distribute Service)规范,并于2004年完成第一版。现行标准是2007年制定的v1.2

DDS 目前已经广泛应用于国防、民航、工业控制等领域,成为分布式实时系统中数据发布/订阅的标准解决方案。DDS 技术是基于以数据为核心的设计思想提出的,定义了描述网络环境下数据内容、交互行为和服务质量要求的标准。

FogBus DDS(数据分发服务)是以数据为中心的网络通信模型,是一套支持发布\订阅模式的应用程序接口(API)。可广泛应用于航空、国防、分布式仿真、工业自动化、分布式控制、机器人、电信多个领域。

产生背景:

过去应用程序之间通过网络传递数据,在需要通信的两个应用程序都两两各自建立连接进行数据传递。存在系统复杂度高、耦合程度高、脆弱难以扩展和维护的问题

为了改变上述状况,出现了另一种通信模式,通过一台中心服务器进行互联互通。这种方式降低了系统复杂度、降低了耦合程度。但是存在单点失效和中心节点成为性能瓶颈的问题。

为解决国防和航天领域数据分发系统面临的这些挑战,由OMG(对象管理组织)提出DSS通信模型并标准化。进一步降低了分布式系统程序之间的耦合性和系统复杂度,提高系统健壮性、伸缩性、可扩展性。

解耦性特点:

(1)  空间解耦(Space Decoupling)

即发布者和订阅者之间无需知道对方的地址和存在。发布者只需要发布它所能提供的数据,而订阅者只需要接收它所感兴趣的数据,发布者和订阅者之间并没有直接的联系,不需要事先知道对方的地址和端口号等信息。

 (2) 时间解耦(Time Decoupling)

即发布者和订阅者无需同时处于就绪状态。在发布者发布数据时,订阅者可能没有在线;当发布者下线之后,订阅者还可能收到相应的发布者所发布的数据。

(3)  数据流解耦(Flow Decoupling)

即发布者和订阅者的主进程是异步的,不需要阻塞。发布者在发布数据时,自身不必阻塞;订阅者在接收所感兴趣的数据时也不必将自身阻塞,而是可以同时进行其它的操作。

DDS构架:

 DDS优势:

• 降低系统耦合性、提高健壮性

• 屏蔽异构系统的复杂性

• 屏蔽网络通信细节

• 提高应用伸缩性

• 加快应用的开发,减少技术负担

• 跨操作系统

 

Baidu
sogou