Warum werden in kurzen Abständen identische MQTT Werte geschrieben?

Fragen zur Nutzung, Features, usw..
Antworten
Andi
Beiträge: 399
Registriert: So Jun 21, 2020 8:48 am

Warum werden in kurzen Abständen identische MQTT Werte geschrieben?

Beitrag von Andi »

Ich habe heute mal im MQTT Explorer die Intervalle von messages etwas beobachtet und es fällt auf daß da jede Menge aus meiner Sicht unnötiger traffic generiert wird durch wiederholtes schreiben von identischen payloads. MQTT ist ja eigentlich ein eventbasiertes Protokoll, daher könnte/sollte man sich das zyklische Senden sparen.

Hier mal einige topics die ich im wenige Sekundentakt beobachte (z.T. sogar deutlich unter dem Regelintervall von 10s):
- chargepoint/get/power
- chargepoint/get/imported und exported
- openWB/chargepoint/X/set/current
- diverse topic unter openWB/chargepoint/X/get die sich inhaltlich nicht oft ändern
- diverse topic unter openWB/counter/X/get die sich inhaltlich nicht oft ändern
- openWB/internal_chargepoint/X/get: hier wird immer alles alle 1-2s geschrieben
- openWB/pv/get

Kann man da nicht Sendefilter davor bauen die prüfen ob ein Wert sich wirklich geändert hat und damit zu senden ist? Das würde auch einiges an Arbeit und eine Reduktion der Weiterverarbeitungsaufwände in anderen Systemen vermeiden...

P.S. es gibt auch einige topics da funktioniert das senden nur bei Wertänderung, es geht also eventbasiert :D
z.B. bei dem Batterietopic openWB/bat/get (zumindest bei mir mit dem Victron Modul)
Antworten