NEWS
Objekte werden verzögert aktualisiert
-
Hi,
ich habe im Moment ein komisches Problem mit meinem ioBroker und habe keine direkte Idee wonach ich suchen soll.
Die Überschrift beschreibt das Thema auch nur halbwegs.Folgendes Problem:
Wenn ich die Objekte aufrufe haben alle eine Sekunden nur den Wert (null) bevor der tatsächliche Wert abgezeigt wird.Beim erstellen eines Blocky-Skripts und der Auswahl eines Objekts, dauert es schon ca. 10-20 Sek. bis der Wert aktualisiert wird.
Bestätige ich die Objektauswahl bevor der Wert angezeigt wird, wird im Blockly nur die ID des Objekts, aber nicht mehr der Name angezeigt und das Speichern des Skripts schlägt fehl, bzw. reagiert nicht mehr.Im Vis scheint es so zu sein, das die Werte erst nach der nächsten Aktualisierung angezeigt werden.
Mir fehlt die Idee ob das ein Javascript Adapter Problem ist oder am Admin oder Web oder ob ein ganz anderer Adapter hier stört.
Versionen:
js-controler 5.0.12
Node.js 16.20.2
NPM 8.19.4
admin 6.10.1
javascript adapter 7.1.4
web 6.1.2
vis 1.4.16Kann mir evtl. jemand auf der suche nach dem Fehler helfen?
Evtl. gibt es schon ein Thread hierzu, kann aber das Verhalten in keine passende Suchanfrage formulieren, die mir ein Ergebnis liefert. -
so etwas hört sich meist nach gründen im system an.
welche hardware?
wieviel ram?
wie ist so die prozessorauslastung deines systems?
wenn der rechner mit lauter anderen dingen beschäftigt ist, dann dauert es eine weile, bis ein datenpunkt aktualisiert wird.also am besten mal das ergebnis des folgenden befehls hier posten
iob diagund dann mal
top oder htopbeobachten, welche prozesse da immer am meisten auslastung erzeugen (CPU-Spalte), aber auch RAM (MEM) des prozesses betrachten
-
so etwas hört sich meist nach gründen im system an.
welche hardware?
wieviel ram?
wie ist so die prozessorauslastung deines systems?
wenn der rechner mit lauter anderen dingen beschäftigt ist, dann dauert es eine weile, bis ein datenpunkt aktualisiert wird.also am besten mal das ergebnis des folgenden befehls hier posten
iob diagund dann mal
top oder htopbeobachten, welche prozesse da immer am meisten auslastung erzeugen (CPU-Spalte), aber auch RAM (MEM) des prozesses betrachten
@oliverio
Hi Danke für die Hilfe:Also iob läuft als eine Proxmox VM
CPU: 4 (2 Socets 2 Kerne)
6GB Arbeitsspeicher
unter Debian 11Die 6GB Arbeitsspeicher werden glaube ich langsam eng, oder zumindest werden die gut belegt....
Ressourcenseitig sieht das eigentlich entspannt aus, wenn ich das richtig verstehe, keine großen ausbrecher......
-
@oliverio
Hi Danke für die Hilfe:Also iob läuft als eine Proxmox VM
CPU: 4 (2 Socets 2 Kerne)
6GB Arbeitsspeicher
unter Debian 11Die 6GB Arbeitsspeicher werden glaube ich langsam eng, oder zumindest werden die gut belegt....
Ressourcenseitig sieht das eigentlich entspannt aus, wenn ich das richtig verstehe, keine großen ausbrecher......
Bitte die Langfassung.
Und nodejs schon mal in Angriff nehmen:https://forum.iobroker.net/topic/69068/neuer-befehl-iob-nodejs-update
-
Bitte die Langfassung.
Und nodejs schon mal in Angriff nehmen:https://forum.iobroker.net/topic/69068/neuer-befehl-iob-nodejs-update
@thomas-braun
Danke für den Tip mit Nodejs, hat aber auch nichts gebracht.wie komme ich an die "Langfassung" Putty springt direkt ins summery....
-
@thomas-braun
Danke für den Tip mit Nodejs, hat aber auch nichts gebracht.wie komme ich an die "Langfassung" Putty springt direkt ins summery....
also bei der auslastung wundert es mich nicht, das da iobroker nicht immer sofort zum zug kommt.
evtl kannst du tricksen in dem du die prozess priorität des prozesse für den iobroker.js-controller etwas hochsetzt. allerdings leidet dann die performance der anderen prozesse darunter, da linux anhand des nice-wertes entscheidet, wieviel zeitscheiben ein prozess auf einem kern erhält, bevor er dem nächsten prozess den kern übergibt.mit top kann man sich das dann anschauen
-
also bei der auslastung wundert es mich nicht, das da iobroker nicht immer sofort zum zug kommt.
evtl kannst du tricksen in dem du die prozess priorität des prozesse für den iobroker.js-controller etwas hochsetzt. allerdings leidet dann die performance der anderen prozesse darunter, da linux anhand des nice-wertes entscheidet, wieviel zeitscheiben ein prozess auf einem kern erhält, bevor er dem nächsten prozess den kern übergibt.mit top kann man sich das dann anschauen
-
@oliverio
Danke fürs Feedback, Welche Auslastung meinst du?
Welche stelle übersehe ich die ganze Zeit?Ja, die vm hat was zu tun, aber hat noch luft nach oben, so wie ich das sehen....

ok, sorry,
ich glaube in einem anderen thread war dann auch ein top auszug mit deutlich höheren auslastungen (chromium, shelly, etc)
dann hab ich das verwechselt.
hab den vorhin nur unterwegs mal angeschaut und nun etwas später dazugeschrieben -
ok, sorry,
ich glaube in einem anderen thread war dann auch ein top auszug mit deutlich höheren auslastungen (chromium, shelly, etc)
dann hab ich das verwechselt.
hab den vorhin nur unterwegs mal angeschaut und nun etwas später dazugeschrieben@oliverio
Ok, "schade" hatte die Hoffnung du siehst etwas das ich übersehe...habe nochmal geschaut, wenn ich top per ssh offen habe und in einem Blockly den Object-Browser aufrufe macht js-con jede menge.....
PID USER PR NI VIRT RES SHR S %CPU %MEM ZEIT+ BEFEHL 422 iobroker 20 0 12,0g 1,2g 40360 R 110,3 21,5 27:55.63 iobroker.js-con -
@oliverio
Ok, "schade" hatte die Hoffnung du siehst etwas das ich übersehe...habe nochmal geschaut, wenn ich top per ssh offen habe und in einem Blockly den Object-Browser aufrufe macht js-con jede menge.....
PID USER PR NI VIRT RES SHR S %CPU %MEM ZEIT+ BEFEHL 422 iobroker 20 0 12,0g 1,2g 40360 R 110,3 21,5 27:55.63 iobroker.js-con@pepsi1183
hm ja das wäre erklärbar.
im javascript-adapter werden sämtliche datenpunkte beim öffnen abonniert. das ist wohl so, damit die auswahl der datenpunkte und anzeige der werte einfacher ist. das kann beim öffnen schon ganz schön last erzeugen. ist aber nur bei der Bearbeitung so.
Nach kurzer Zeit sollte sich das beruhigen.evtl noch etwas zu deiner auslastungsanzeige oben.
da sieht man jetzt die einzelne VM
wie sieht den die Gesamtbelastung der Hardware aus?wenn da noch andere VMs oder Container laufen, benötigen die ja auch ein wenig Leistung.
Allerdings weiß ich nicht, ob sich das in der Auslastung der einzelnen VM wiederspiegelt. So von der Grafik her würde ich auch sagen, das passt.evtl könnte man mal noch nach der Lese/Schreibauslastung schauen.
Was hängt da dran? SD-Karte/SSD?
was verwendest du für den objektspeicher bei iobroker? redis/jsonl?
prüfe mal die qualität deines datenspeichers, nicht das sich da schon sektoren/speicherblockausfälle ankündigen?
https://wiki.ubuntuusers.de/Festplattenstatus/
schau auch mal das syslog nach warning/error durch.
idealerweise in der iobroker vm, als auch auf dem host-system unter proxmox, falls das geht (ich hab kein proxmox)ggfs. auch mal parallel eine 2 vm mit einer neuen iobroker installation aufmachen, backup einspielen und schauen ob es sich da genauso verhält
sorry für die relativ wahllose vorschlagsliste. das sind die sachen die mir noch eingefallen sind.
-
Eine Uptime von 130 Tagen heißt schon mal das der Kernel von vor 130 Tagen ist. Mal iobroker neu gestartet? Weiß nicht ob ne neue nodejs Version verwendet wird, wenn er nicht neu gestartet wird.
-
@pepsi1183
hm ja das wäre erklärbar.
im javascript-adapter werden sämtliche datenpunkte beim öffnen abonniert. das ist wohl so, damit die auswahl der datenpunkte und anzeige der werte einfacher ist. das kann beim öffnen schon ganz schön last erzeugen. ist aber nur bei der Bearbeitung so.
Nach kurzer Zeit sollte sich das beruhigen.evtl noch etwas zu deiner auslastungsanzeige oben.
da sieht man jetzt die einzelne VM
wie sieht den die Gesamtbelastung der Hardware aus?wenn da noch andere VMs oder Container laufen, benötigen die ja auch ein wenig Leistung.
Allerdings weiß ich nicht, ob sich das in der Auslastung der einzelnen VM wiederspiegelt. So von der Grafik her würde ich auch sagen, das passt.evtl könnte man mal noch nach der Lese/Schreibauslastung schauen.
Was hängt da dran? SD-Karte/SSD?
was verwendest du für den objektspeicher bei iobroker? redis/jsonl?
prüfe mal die qualität deines datenspeichers, nicht das sich da schon sektoren/speicherblockausfälle ankündigen?
https://wiki.ubuntuusers.de/Festplattenstatus/
schau auch mal das syslog nach warning/error durch.
idealerweise in der iobroker vm, als auch auf dem host-system unter proxmox, falls das geht (ich hab kein proxmox)ggfs. auch mal parallel eine 2 vm mit einer neuen iobroker installation aufmachen, backup einspielen und schauen ob es sich da genauso verhält
sorry für die relativ wahllose vorschlagsliste. das sind die sachen die mir noch eingefallen sind.
@oliverio
Das Sorry kannste streichen, versuchst ja zumindest zu helfen, da ich auch keine Idee habe, freue ich mich über jeden Vorschlag wo man was prüfen/optimieren könnte."was verwendest du für den objektspeicher bei iobroker? redis/jsonl?"
- Gute Frage, müsste ich gleich mal schauen, was ist denn performace technisch zu empfehlen?
Also der Host hat ebenfalls wenig zu tun.... und zur SSD kann ich noch keine Fehlermeldungen/Hinweise finden.

@ticaki :
iob habe ich gerade mal neu gestartet und auch mal ein sudo reboot gemacht, trotzdem keine Verbesserung -
@oliverio
Das Sorry kannste streichen, versuchst ja zumindest zu helfen, da ich auch keine Idee habe, freue ich mich über jeden Vorschlag wo man was prüfen/optimieren könnte."was verwendest du für den objektspeicher bei iobroker? redis/jsonl?"
- Gute Frage, müsste ich gleich mal schauen, was ist denn performace technisch zu empfehlen?
Also der Host hat ebenfalls wenig zu tun.... und zur SSD kann ich noch keine Fehlermeldungen/Hinweise finden.

@ticaki :
iob habe ich gerade mal neu gestartet und auch mal ein sudo reboot gemacht, trotzdem keine Verbesserung -
@oliverio
Das Sorry kannste streichen, versuchst ja zumindest zu helfen, da ich auch keine Idee habe, freue ich mich über jeden Vorschlag wo man was prüfen/optimieren könnte."was verwendest du für den objektspeicher bei iobroker? redis/jsonl?"
- Gute Frage, müsste ich gleich mal schauen, was ist denn performace technisch zu empfehlen?
Also der Host hat ebenfalls wenig zu tun.... und zur SSD kann ich noch keine Fehlermeldungen/Hinweise finden.

@ticaki :
iob habe ich gerade mal neu gestartet und auch mal ein sudo reboot gemacht, trotzdem keine Verbesserung@pepsi1183
rediswichtig: https://forum.iobroker.net/topic/52976/wichtiger-hinweis-für-redis-installationen
Überlege gerade ob ggf. ein Adapter mal unkontrolliert Objekte generiert hat oder ähnliches und das Problem einfach leere ungenutzte Objekte sind.....
Experte -> object baum -> mülleimer klicken, da steht die Zahl wieviele States gelöscht werden, nur nicht bestätigen. :)
-
@oliverio
Das Sorry kannste streichen, versuchst ja zumindest zu helfen, da ich auch keine Idee habe, freue ich mich über jeden Vorschlag wo man was prüfen/optimieren könnte."was verwendest du für den objektspeicher bei iobroker? redis/jsonl?"
- Gute Frage, müsste ich gleich mal schauen, was ist denn performace technisch zu empfehlen?
Also der Host hat ebenfalls wenig zu tun.... und zur SSD kann ich noch keine Fehlermeldungen/Hinweise finden.

@ticaki :
iob habe ich gerade mal neu gestartet und auch mal ein sudo reboot gemacht, trotzdem keine VerbesserungIch verwende auch redis
In der expertensicht der Instanzen siehst du welcher Instanz aktuell wieviele states liest und schreibt.
-
Ich verwende auch redis
In der expertensicht der Instanzen siehst du welcher Instanz aktuell wieviele states liest und schreibt.
Danke für die Ideen.
Habe jetzt auch auf redis umgestellt und die Performance im Admin Bereich scheint auch besser zu sein.
Habe dabei auch gesehen, dass mein MQTT Server von einem ESPresence "versuch" mit Datenpunkten überflutet wurde.
Habe ich jetzt erstmal gelöscht und das Thema ESPresence verschoben, bis das System wieder richtig läuft.Ich habe noch 18640 Objekte und grob überschlagen passt je Instanz die Anzahl Objekte.
Aber irgendwas scheint noch nicht sauber zu sein. Mein Vis Projekt zeigt mir beim starten immer noch initial keine Daten an, sondern lädt die Werte anscheinend immer erst nach und nach bei Änderungen bzw. Wert Update Meldungen.
Kann man definieren, wie lange Werte in Objekten "Gültig" sind? Oder irgendwas in der Richtung?
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login