OpenDDS 在两台机器上实现通讯

OpenDDS 在两台机器上实现通讯

通过Ip和Port通信

打开命令行切换到上一节创建的测试文件夹目录下

在A机器上运行DCPSInfoRepo程序

执行命令

DCPSInfoRepo -ORBListenEndpoints iiop://172.16.0.63:12345 -ORBDebugLevel 10 -ORBLogFile DCPSInfoRepo.log

注:这个IP地址为当前DCPSInfoRepo运行的机器的IP地址,端口号可以随意配置,只要没有被占用就行.

修改subscriber和publisher的配置文件sub.ini 和 pub.ini

[common]
DCPSDebugLevel=0
DCPSInfoRepo=corbaloc::172.16.0.63:12345/DCPSInfoRepo
DCPSChunks=20
DCPSChunkAssociationMutltiplier=10
DCPSLivelinessFactor=80
DCPSBit=0
DCPSGlobalTransportConfig=$file

[transport/t1]
transport_type=udp

A机器的sub.ini 文件内容要与B机器的pub.ini内容保持一致
(偷偷告诉你,其实直接复制过去就行啦)

在A机器上运行subscriber

执行命令

.\subscriber -DCPSConfigFile sub.ini

在B机器上运行publisher

执行命令

.\publisher -DCPSConfigFile pub.ini

这样我们就可以在一台机器上进行订阅,另一台机器上进行发布了

小Tips

如果说发布运行成功,订阅方无反应,需要自行检查下发布订阅代码中关于domain id的设置以及主题名称的设置。实在不行你可以在一台机器上跑通发布订阅之后,把发布的代码拷贝到另一台电脑上去,这样就好啦。

上一篇:每日一题-89(购买了产品A和产品B却没有购买产品C的顾客)


下一篇:一、响应式编程的产生_Reactive Streams组件使用、源码理解