При использовании Mosquitto v1.14 в качестве локального моста он будет помещать в очередь сообщения, когда отсутствует соединение с облачным брокером Mosquitto v1.6. Даже если соединение отсутствует в течение нескольких дней, оно отправит все пропущенные сообщения в облако при восстановлении соединения.
При использовании v1.5.8 или 1.6 (это два, которые я тестировал) в качестве локального моста некоторые сообщения пропадают. Приблизительно каждое третье сообщение исчезает при восстановлении соединения. Размер сообщения составляет около 100 килобайт и отправляется локальному брокеру каждые 10 минут.
Сообщения публикуются на локальном мосту с QoS1.
Клиент облачной виртуальной машины, на котором также размещается облачный брокер Mosquitto, подключается к облачному брокеру с помощью QoS1.
Локальная система Win7 64bit.
Облачная виртуальная машина - это 64-разрядная версия Win Server 2016.
Это файл конфигурации, который я использовал локально, и он идентичен для всех версий, которые я пробовал:
max_inflight_messages 1
max_queued_messages 1209600
persistence true
log_type error
log_type warning
log_type notice
log_type information
log_type all
connection_messages true
connection cloud-bridge
bridge_protocol_version mqttv311
address <cloud address>:1883
cleansession false
topic # out 1 "" ""
remote_clientid broker1
Это файл конфигурации, используемый для облачного брокера:
max_inflight_messages 1
max_queued_messages 10000000
persistence true
log_type error
log_type warning
log_type notice
log_type information
log_type all
connection_messages true
Я попытался запустить мост и посредника от имени администратора.
Мне бы очень хотелось использовать более новую версию Mosquitto для этого проекта.
Есть идеи, почему более поздние версии Mosquitto сбрасывают сообщения?