opc-ua - 当 OPC UA 服务器重新启动时,客户端自动重新订阅的最佳位置是什么
问题描述
我发现当我的 OPC UA 服务器重新启动时,我的 Milo OPC UA 客户端(sdk-client 0.5.3)会自动重新连接到服务器,这很好!但是订阅不会重新订阅。
那么,订阅或 SubscriptionManager 是否可以选择在内部自动重新连接?
还是我必须自己做这个?我已经阅读了关于 addSubscriptionListener 并在 onSubscriptionTransferFaild 上执行此操作 - 但这是错误的地方,因为这是连接丢失的时候 - 重新订阅将失败 - 应该在 OPC UA 连接再次出现时完成重新连接。重新连接的最佳地点在哪里?当客户端重新连接到服务器时,是否有一些监听器会触发?
解决方案
我已阅读有关 addSubscriptionListener 并在 onSubscriptionTransferFaild 上执行此操作 - 但这是错误的地方,因为这是连接丢失的时候 - 重新订阅将失败
这实际上是正确的地方。
当最终重新建立连接时,客户端将尝试恢复您的旧会话,这将失败,然后将您以前的订阅转移到您的新会话,这将失败。当这些订阅传输失败时,onSubscriptionTransferFailed
将为每个订阅调用回调。
推荐阅读
- python - networkx 设置复杂节点属性
- c - 如何检查输入文件是否包含字母或特定数字?
- python - NLTK ChartParser 给出空列表
- android - 如何在使用“CarouselSlider”时根据移动尺寸调整图像尺寸并将按钮文本放在该图像上?
- objective-c - 在 macOS 项目中使用没有 CocoaPods 的 libxlsxwriter
- c - 二维数组的每条可能路径?(交叉产品)
- c++ - 为什么允许将派生类的方法静态转换为基类的方法?
- assembly - 从 ARM 购买 IP 的半导体制造商是否应该满足参考手册中描述的指令的时钟周期?
- java - 使用 Google Maps Java API 时出现 java.net.UnknownServiceException
- angular - 如何从角度 7 中的当前 url 获取路由名称