[Server] Retained messages store optimized for database
- Dominant language
- C#
- Stars
- 5.1k
- Forks
- 1.2k
- PR merge metrics
- No merged PRs in 30d
Description
### Describe the feature request
Currently, all retained messages are kept in the working memory, which can quickly become a problem with larger quantities. It would be a good idea to store these in a SQL database or in Redis, for example.
However, the "interfaces" are currently very limited in order to implement such a concept.
### Which project is your feature request related to?
- Server
### Describe the solution you'd like
In the method "FilterRetainedApplicationMessages" the retained messages are no longer handled in a for loop. The topic is now passed to a method in the new interface "IMqttClientSubscriptionsManager", which can return several retained messages as a result.
This interface can of course be overwritten.
https://github.com/dotnet/MQTTnet/blob/2aa4219838a67e336ae4f5902d956c455bc48c11/Source/MQTTnet/Server/Internal/MqttClientSubscriptionsManager.cs#L401-L453
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.