什么是 DDS?
DDS 全称为数据分发服务(Data Distribution Service),是一个中间件平台(middleware platform),用于构建以数据为中心的系统。
DDS 有一个很关键的概念:“以数据为中心”。
数据通过主题(Topic)进行标识,用户只需要关心自己想要的数据。发布者根据主题发布数据,订阅者则通过选择感兴趣的主题进行订阅,姐可以获取到数据。这便是 DDS 以数据为中心的发布-订阅模型。
DDS 有助于构建解耦和灵活的分布式架构,提供了安全、低延迟和超高吞吐量的数据交换率。此外,它还具有较高的可靠性和可扩展性。
分布式系统内部通信时,DDS 确保在正确的时间、正确的地点共享正确的数据。
DDS 的一些关键定义
- 全局数据空间(Global Data Space)
DDS 网络被称为全局数据空间。
- 域(Domain)
在全局数据空间内,可以创建称为域的网络部分。域由一个域名称和一个数字域 ID 标识。全局数据空间内可以有一个或多个域。
- 主题(Topic)
主题位于域内部。主题是描述网络通信数据类型的类别,通过主题名称来标识。
- 发布者和订阅者(Publisher and Subscriber)
发送数据的应用程序称为 “发布者”,接收数据的应用程序称为 “订阅者”。应用程序可以是发布者、订阅者或两者兼而有之