thingsboard / tbmq

Open-source, scalable, and fault-tolerant MQTT broker able to handle 4M+ concurrent client connections, supporting at least 3M messages per second throughput per single cluster node with low latency delivery. The cluster mode supports more than 100M concurrently connected clients.
https://thingsboard.io/products/mqtt-broker/
Apache License 2.0
582 stars 49 forks source link

[Feature Request] Redis support #74

Closed dmytro-landiak closed 1 year ago

dmytro-landiak commented 1 year ago

Is your feature request related to a problem? Please describe.

Need Redis support for cache in cluster mode. Only caffeine type is available right now for single-node deployment.

Thus in the case of enabling the cache for MQTT client credentials (i.e. CACHE_SPECS_MQTT_CLIENT_CREDENTIALS_MAX_SIZE > 0 - note, it is disabled by default) - credentials are cached on clients' connections. After the credentials are updated - the cache is not cleared on all nodes (only cleared on the target node that processed the request regarding the MQTT client credentials update) leading to the unexpected behavior.