HoneypotManager.onMessageReceived cached für jede Nachricht jedes Nutzers (nicht nur im
Honeypot-Channel) Message-Objekte in Main.messageCache, ohne diese je zu bereinigen:
public static HashMap<User, List<Message>> messageCache = new HashMap<>();
Sobald der Honeypot-Listener registriert ist (siehe verwandtes Issue zu fehlenden Listenern),
würde der Speicherverbrauch mit der Zeit unkontrolliert wachsen.
Vorschlag:
- Cache auf den Honeypot-Channel beschränken statt auf alle Nachrichten
- Größenbegrenzung/TTL einführen (z. B. nur die letzten N Nachrichten pro Nutzer, automatisches
Entfernen alter Einträge)
HoneypotManager.onMessageReceivedcached für jede Nachricht jedes Nutzers (nicht nur imHoneypot-Channel) Message-Objekte in
Main.messageCache, ohne diese je zu bereinigen:Sobald der Honeypot-Listener registriert ist (siehe verwandtes Issue zu fehlenden Listenern),
würde der Speicherverbrauch mit der Zeit unkontrolliert wachsen.
Vorschlag:
Entfernen alter Einträge)