[英]Message lost in paho-mqtt
我正在使用 paho-mqtt 從 emqx 代理接收數據,但我正在丟失數據,因為有時我的 paho-mqtt 訂閱者出現故障。 當我再次運行訂閱者時,任何獲取數據的方法都會提供所有已發布的數據。
如果沒有訂閱者,EMQ x 會丟棄該消息,這是正常的設計。
您可以嘗試使用 EMQ x 企業版並使用后端進行離線數據存儲。
https://docs.emqx.io/tutorial/latest/en/backend/whats_backend.html
我希望你得到一個解決方案。 我不知道你的客戶端,但是 paho-mqtt java 客戶端可以自動重新連接。 可以在“connectComplete(boolean reconnect, String s)”布爾參數中檢查此重新連接
public class MqttautoClient implements MqttCallbackExtended {
.
.
.
@Override
public void connectComplete(boolean reconnect, String s) {
Log.d(TAG, "Connection connectComplete");
}
@Override
public void connectionLost(Throwable throwable) {
Log.d(TAG, "Connection lost");
}
@Override
public void messageArrived(String topic, MqttMessage mqttMessage) throws Exception
{
Log.d(TAG, "messageArrived");
}
public void deliveryComplete(IMqttDeliveryToken iMqttDeliveryToken) {
Log.d(TAG, "deliveryComplete ");
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.