Como se sugirió en otra pregunta , hemos agregado la ruta de destino como db y autosave_interval como 3000, pero después de unos días la memoria se está reduciendo automáticamente.
Avíseme si hay alguna otra solución para almacenar solo en el archivo db.
Respuestas:
El intermediario mosquitto no admite la descarga del almacén de persistencia a una base de datos externa y el archivo db es solo una copia de seguridad de la base de datos en memoria en caso de que el intermediario falle o se cierre.
Si tiene una gran cantidad de mensajes en cola para clientes fuera de línea o una gran cantidad de mensajes retenidos, entonces se consumirá memoria.
Lo mejor que puede hacer es configurar la
persistent_client_expiration
opción para eliminar mensajes en cola para clientes que no han iniciado sesión durante mucho tiempo. Los detalles de esta opción se pueden encontrar en la página del manual mosquitto.conf .De lo contrario, deberá utilizar un agente diferente que admita el almacenamiento fuera de proceso de la base de datos de persistencia. Algo como mosca se puede configurar para usar mongo o redis como tienda de respaldo.
fuente