Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python paho客户端代理连接_Python_Mqtt_Iot_Mosquitto_Paho - Fatal编程技术网

python paho客户端代理连接

python paho客户端代理连接,python,mqtt,iot,mosquitto,paho,Python,Mqtt,Iot,Mosquitto,Paho,我的出版商和经纪人在不同的系统上工作。我使用QOS=2传递消息。我使用python paho mqtt代理。它是对 1) 当我将消息发布到连接的代理时,它通过调用_publish()回调来确认我。但是,当我将运行在不同机器上的代理与网络断开连接时,发布者会将发布消息存储在本地机器上,当我将代理连接到网络时,它会将以前的所有消息发布到代理。我认为这些消息存储为机上消息(未确认),如果这些消息是机上消息,那么这些消息存储在哪里,这些机上消息是否有任何限制,因为我的代码中没有包含任何关于机上消息的内

我的出版商和经纪人在不同的系统上工作。我使用QOS=2传递消息。我使用python paho mqtt代理。它是对

1) 当我将消息发布到连接的代理时,它通过调用_publish()回调来确认我。但是,当我将运行在不同机器上的代理与网络断开连接时,发布者会将发布消息存储在本地机器上,当我将代理连接到网络时,它会将以前的所有消息发布到代理。我认为这些消息存储为机上消息(未确认),如果这些消息是机上消息,那么这些消息存储在哪里,这些机上消息是否有任何限制,因为我的代码中没有包含任何关于机上消息的内容

2) 在第一种情况下,我断开了代理与网络的连接,现在我关闭了代理并再次连接到网络,我对_disconnect()回调的程序调用表示意外断开,然后将所有未发布的消息发布到代理。 a) 我很困惑,为什么只有在代理关闭时才调用on_disconnect(),而在代理与本地网络断开连接时才调用on。 b) on_disconnect()方法仅在我的代理再次连接到网络时调用。 如果我的代理突然断开连接,是否有办法立即通知发布者

3) 我在实时gps跟踪中使用mqtt,我想在发布服务器未连接到代理时将消息存储到本地db,但我无法找到发布服务器在与代理断开连接时如何立即知道的任何方法

4) 使用QOS=2是确保消息传递到代理的最佳方法,或者在断开与代理的连接时使用本地db进行存储,然后自动与本地db同步以发布所有消息