如何使 OpenDDS DCPSInfoRepo 持久化?

Posted

技术标签:

【中文标题】如何使 OpenDDS DCPSInfoRepo 持久化?【英文标题】:How do I make the OpenDDS DCPSInfoRepo persistent? 【发布时间】:2021-07-24 11:07:47 【问题描述】:

我一直在尝试找到一个解决方案,如果重新启动 OpenDDS 的 DCPSInfoRepo,现有的发布者和订阅者不会重新连接。我在开发者指南中找到了一种方法:

以下指令: 静态 PersistenceUpdater_Static_Service “-file info.pr -reset 1” 将 DCPSInfoRepo 更新持久保存到本地文件 info.pr。如果该名称的文件已经存在, 其内容将被删除。与命令行选项 -r 一起使用,DCPSInfoRepo 可以 转生到之前的状态。使用持久性时,使用以下命令启动 DCPSInfoRepo 进程 带有以下命令行选项的 TCP 固定端口号。这允许现有的 客户端重新连接到重新启动的 InfoRepo。

所以我创建了一个 svc.conf 文件,并在启动 DCPSInfoRepo 时将其与标志 -ORBSvcConf 一起作为参数提供。不幸的是,我收到一条错误消息,指出没有找到 PersistenceUpdater_Static_Service。我曾尝试在文档以及互联网上的其他地方进行搜索,但到目前为止一直很不走运。

如果有人可以提供帮助,我们将不胜感激。

【问题讨论】:

【参考方案1】:

在您的 svc.conf 文件中使用 static PersistenceUpdaterSvc "-file info.pr"

【讨论】:

以上是关于如何使 OpenDDS DCPSInfoRepo 持久化?的主要内容,如果未能解决你的问题,请参考以下文章

OpenDDS:如何通过公共网络(WAN)通信两台主机

如何在windows系统上安装OpenDDS 3.12

OpenDDS 和发布者存在通知

opendds怎么监视一个变量

OpenDDS 环境搭建

OpenDDS 中的哪个库包含“OpenDDS::DCPS::operator<<”?