ZBLOG

## Liveliness QoS Using argument **``-l``** ```` or **``--liveliness``** ```` will configure the corresponding endpoint to wait that lease duration before considering that a data writer is no longer alive. Also, the argument...

这是关于Liveliness QoS(服务质量)的说明,通常用于实时数据传输系统中,以确保数据发布者和订阅者之间的连接有效性。以下是对内容的总结与要点提炼:

Liveliness QoS 配置

  1. Lease Duration

    • 使用 -l <duration>--liveliness <duration> 设置端点在认为数据写入器不再活跃之前需等待的租约持续时间。
  2. Liveliness Assert Period

    • 使用 --liveliness-assert <period> 来配置参与者发送连续活跃消息之间的周期。
  3. Liveliness Kind

    • 设定如何判断数据写入器为“活跃”状态:
      • AUTOMATIC:只要本地进程和连接存在,所有实体都被视为活跃。
      • MANUAL_BY_PARTICIPANT:如果任一实体声明其活跃性,则认为同一DomainParticipant中的所有其他实体也都是活跃的。
      • MANUAL_BY_TOPIC:至少需要一个实例声明其活跃性以认为它是活跃的。

注意事项

  • --liveliness-assert 的配置仅在 liveliness QoS 类型为 AUTOMATIC 或 MANUAL_BY_PARTICIPANT 时生效,并且 <period> 必须小于租约持续时间。
  • 发布者应用程序的租约持续时间必须大于订阅者应用程序的租约持续时间,否则两个端点被视为不兼容。
  • 存在一种 liveliness kind 兼容性规则,检查数据读取器和写入器之间的兼容性。如下表所示:
数据读取器 Liveliness QoS Kind Automatic Manual by Participant Manual by Topic
Automatic ✔️ ✔️ ✔️
Manual by Participant ✖️ ✔️ ✔️
Manual by Topic ✖️ ✖️ ✔️
  1. Sending Samples Period

    • 使用 -i <period>--interval <period> 来配置发布者应用程序发送样本的周期(以毫秒为单位),该周期应始终小于租约持续时间。
  2. 如果未配置 --liveliness--liveliness-assert,则会使用 eProsima Fast DDS 的默认值(无限)。

总结

Liveliness QoS 是实现高效且可靠的数据通信的重要工具,通过合理配置可以确保系统在网络变化或节点失效时能够快速响应并进行调整。在开发实时系统时,要特别注意各个参数之间的关系与兼容性。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:http://sdn.0voice.com/?id=7848

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?