【问题标题】:How topic QOS effect DDS service?主题QOS如何影响DDS服务?
【发布时间】:2021-03-17 10:26:02
【问题描述】:

大部分主题 Qos 策略也适用于 DataWriter 和 DataReader。例如 DURABILITY、DEADLINE、LATENCY_BUDGET、RELIABILITY 等。

当这种类型的 Qos 策略在 Topic 及其 DataWriter 或 DataReader 中设置不同的值时会发生什么?

是否被认为是不兼容的请求? Topic 和 DataWriter 或 DataReader Qos 策略之间是否存在层次结构?

【问题讨论】:

    标签: publish-subscribe data-distribution-service


    【解决方案1】:

    允许设置不同于主题 QoS 的 DataReader/DataWriter QoS。主题 QoS 在 DDS 中唯一真正重要的作用是持久性类型设置为瞬态/持久(可选功能)。在这种情况下,即使所有应用程序进程都停止,中间件也会确保数据仍然可用(但在瞬态的情况下,一些中间件仍然存在)。

    中间件保留的数据集是从主题 QoS 复制其 QoS 的 DataReader 将包含的内容。为此目的复制 QoS 时,历史类型/深度和资源限制设置取自 DurabilityService 设置;并且该机制还包括对已处理数据的一些自动清理(DurabilityService 设置的“服务清理延迟”部分)。

    因此,如果 DataWriter 和 Topic 都将持久性类型设置为瞬态/持久,如果 QoS 不兼容,您可能会收到不兼容的 QoS 通知。

    我的建议是在考虑所需主题时始终仔细考虑 QoS,然后相应地设置主题 QoS。然后,您几乎总是可以让 DataReaders 和 DataWriters 从 Topic QoS 继承。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-09
      • 1970-01-01
      相关资源
      最近更新 更多