DDS Best Practices

RTI Connext DDS is a powerful platform that abstracts many difficult parts of distributed system design. However, like any powerful technology, it must be used in optimal ways to get the most out of it. There may be multiple ways to accomplish the same goal, but the approaches can differ in performance or resource utilization. These best practices provide rules on designing your distributed system and architecting applications that use RTI Connext DDS.

You can contribute by commenting on existing best practice articles, or by creating new best practices here (requires logging in).

To use the Modern C++ Connext DDS API correctly you need to understand its type system. Most types in the API belong into two categories:

- Value types

- Reference types

1060 reads — 0 comments

For better performance and reduced network usage, use individual Permissions Files for each

2254 reads — 0 comments
QoS Profile composition is a new feature added to Connext DDS 6. This feature allows QoS Profiles to be constructed from other profiles using composition. Learn the details of this feature and how to properly use it.
4020 reads — 0 comments

The following references summarize key best practices when using DDS to integrate distributed systems:

5847 reads — 0 comments
Use the bind_and_manage_listener call to avoid managing Entity and listener deletion in your application.
6349 reads — 0 comments
Entities, such as the DomainParticipant or the DataReader should never be created as pointers (i.e. using new). They implement reference semantics, and should be declared as regular variables.
8385 reads — 0 comments

For better reusability and maintenance of your code, design your QoS as sets of reusable profiles instead of tuning each data flow separately.

9742 reads — 0 comments