
























这是一个创建于 1551 天前的主题,其中的信息可能已经有所发展或是发生改变。
我们目前设备不多。数据流程如下:
遇到的问题是:java 程序挂掉,数据就丢失了,这里如何做高可用?
第 1 条附言 · 2022 年 3 月 18 日
仔细看了一下 emqx 的文档,使用规则引擎把数据通过 http 请求接口的形式解决了 java 客户端订阅总是断开的问题。
1 villivateur 2022 年 3 月 16 日 via Android你不如去解决下为什么 Java 会挂掉。 另外物联网设备自己可以在本地做缓存 |
2 cat007 2022 年 3 月 16 日做高可用就不会挂掉了 |
3 Kriss 2022 年 3 月 16 日@villivateur java 用的库是这个 Eclipse Paho Java Client ,经常 mqtt 断连 。重连机制一直在调试,最近几天好点了 |
5 Kriss 2022 年 3 月 16 日@cat007 主要是 java 服务订阅一个主题,如果订阅连接断了,重连也失败了,如何做高可用?我试过 system.exit 然后触发 docker 重启。 |
6 mlhorizon 2022 年 3 月 16 日高可用就是不让这个程序挂掉。 |
7 Kriss 2022 年 3 月 16 日@mlhorizon 是的 ,我可能说错了,我的意思是如何让消费者的连接断了能快速回复。或者我目前做的是不是错的方法?在物联网行业中如何保证录入数据的高可用性? |
9 paradoxs 2022 年 3 月 16 日呵呵,既然你的 java 程序经常要挂,那我推荐你把 Influxdb 的数据持久化。 |
10 Kriss 2022 年 3 月 16 日@paradoxs java 程序做解析,然后就直接 influxdb 持久化了。 我说错了,不是程序挂了,是订阅 emqx 的连接挂了,不好意思。我也不知道业内的逻辑是怎么样的,所以上来问问看我目前做的是不是有更好的解决方案 |
11 paradoxs 2022 年 3 月 16 日打开 emq 后台,找到插件,然后把 emqx_web_hook EMQ X WebHook Plugin 这个打开。 vim etc/plugins/emqx_web_hook.conf , 把里面的链接换成你 java 程序监听的地址。 重启一下 emqx ,然后在 java 里面就可以监听到断链的消息。 后面再操作一下重新链接 |
12 IfEles 2022 年 4 月 7 日@HHAO2019 mqtt 断开,有几种可能,你设备端的 clientId 重复,还有可能是你的 java 程序消费没有生产的速度快,导致 mq 队列积压阻塞,然后 mqtt 会断开,你可以排查一下程序经常断开的原因 |
13 yzqdm 2023 年 12 月 8 日请教一下监控设备上下线有什么方案吗,设备掉线推送这种的 |
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。