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的设置以及主题名称的设置。实在不行你可以在一台机器上跑通发布订阅之后,把发布的代码拷贝到另一台电脑上去,这样就好啦。