NEWS
Steigender RAM Verbrauch normal?
-
Ich bin mir nicht ganz sicher, aber ich habe mal etwas nachgeforscht, dabei ist mir folgende Tabelle untergekommen!
Node.js Version Limit 17.x 4.0 GB 16.x 4.0 GB 15.x 4.0 GB 14.x 4.0 GB 13.x 2.0 GB 12.x 2.0 GB 11.x 1.4 GB 10.x 1.4 GB 9.x 1.4 GB Wenn Du wie geschrieben, Node 14 nutzt, dann ist das Limit auf 4GB festgelegt und Node nutzt das dann auch, bei Java gibt es die Möglichkeit den max. Ram Verbrauch beim Start zu setzen und der garbitsch collector macht dann in regelmäßigen Abständen das Ram wieder frei. Bei Node gab es bis, glaube Version >=12 auch die Möglichkeit den RAM Verbrauch einzurichten / zu optimieren.
Bei den neueren Node Versionen liegt das soweit ich das verstanden habe in den Händen von Node selber.VG
-
@homoran said in Steigender RAM Verbrauch normal?:
@zeron850 sagte in Steigender RAM Verbrauch normal?:
ich würde gerne lieber die Ursache für den steigenden Ressourcenverbrauch finden.
das wäre auch der richtige Weg.
Aber nochmals@zeron850 sagte in Steigender RAM Verbrauch normal?:
löst mein Problem aber nicht das irgendwann der RAM ganz aufgebraucht ist….
ist das wirklich so dass der available RAM (nicht der free!!) auf 0 geht?
bei mir sieht es jetzt so aus
Es dauert immer ein paar Tage bis die Verteilung von freiem RAM auf die laufenden Prozesse stabilisiert ist.Ich kann nicht für
Ich kann nicht für @zeron850 sprechen, aber der Speicher, ob jetzt für bare-metal oder irgend eine Art von Virtualisierung kann durch eine fehlerhafte Anwendung oder Applikationen (z.B.: Video Bearbeitung mit nur 4GB) dazu führen, dass dem Rechner der Speicher ausgeht. Linux fängt dann an erst zu swapen, wenn der swap aufgebraucht ist, friert der Rechner ein. Bei den heutigen PCs sieht man das nicht mehr so oft, da es genügend RAM gibt.
Lange Rede, kurzer Sinn, wenn die 4GB die @zeron850 in seinem Rechner hat nicht reichen, gibt es aus meiner Sicht nur zwei Dinge die er machen kann,- Rechner mit mehr RAM
- oder den Verbrauch von RAM für den/die User einschränken, um das einfrieren zu vermeiden
Ich kenne mich mit DietPi nicht aus, ob da "systemd" genutzt wird aber vielleicht hilft das ja als Denkanstoß.
In der Konsole als iobroker User oder der Standard User aus DietPi:id
sudo systemctl show user-(id der user).slice -p MemoryHigh <- gibt Dir aus, wie viel RAM er benutzen darf.
sudo systemctl set-property user-(id der user).slice MemoryHigh=3G <- schränkt den User auf 3GB ein
sudo systemctl show user-(id der user).slice -p MemoryHigh <- check ob es funktioniert.es sollte pro User eine Datei geben in der man nachschauen kann, sie wird auch nach einem reboot gelesen, um die User wieder einzuschränken.
cat /etc/systemd/system.control/user-(id der users).slice.d/50-MemoryHigh.conf
VG
-
@dp20eic sagte in Steigender RAM Verbrauch normal?:
Lange Rede, kurzer Sinn, wenn die 4GB die @zeron850 in seinem Rechner hat nicht reichen, gibt es aus meiner Sicht nur zwei Dinge die er machen kann,
es gibt ja noch die 2-te ..
die Prozesse aufteilen im Multihost betrieb
-
Erstmal vielen Dank und leider ist es der available RAM der flöten geht. Der Odroid C4 hat allerdings nur 3,6 bzw. 3,7 GB RAM. Von daher wird das mit den 4 GB schwierig.
Ich werde aber heute Abend mal die Tipps mit dem zugewiesenen RAM checken.
Gibt es eine Anleitung für das Multihost Thema?
-
-
Merci!
-
@arteck said in Steigender RAM Verbrauch normal?:
es gibt ja noch die 2-te ..
die Prozesse aufteilen im Multihost betriebHi,
ja das ist auch noch eine Möglichkeit, macht das System aber auch nicht einfacher zu administrieren und wenn ich mich recht entsinne, hat man dann ein Problem, dass am Master oder Slave angeschlossene USB Dongle (zwave / zigbee) nicht mehr nutzbar sind, wenn mal alles wieder auf der Seite läuft, wo sie nicht angeschlossen sind.
Hoffe die Info ist noch aktuell, ist schon etwas her, dass ich mich mit Multihost befasst habe.VG
-
Sind wir uns sicher, dass das kein Memory-Leak in Node.js selbst ist? Node 16.16 (und potentiell vorherige Versionen) hat nämlich eins. Vielleicht haben sie das gleiche in 14.20 eingebaut.
-
HomeAssistant hat auch gerade das gleiche Thema. Da läuft auch 14.20 im Z-Wave Container:
https://github.com/home-assistant/core/issues/77767Ich fürchte, 14.20 ist broken.
-
Wird zwar nichts zu deinem Problem bringen, aber heb nodejs auf Version 16
Gut, da hatte ich die Vermutung, dass es eher mit skripten zusammenhängt, aber die Empfehlung ging da schon zu nodejs16.
-
@thomas-braun Auch da aufpassen, 16.16 ist auch kaputt. 16.17 könnte ok sein: https://github.com/AlCalzone/ioBroker.zwave2/issues/919#issuecomment-1227290060
-
Da 16.17.0 die aktuelle stabile Version ist und man ja immer diese fährt...
Kein Problem...
Die 18 hat übrigens ein Problem mit dem Netzwerk, da steigen regelmäßig Adapter aus. Nur so als Vorwarnung, falls jemand sein Heil in node18 suchen sollte...
-
@thomas-braun sagte in Steigender RAM Verbrauch normal?:
Die 18 hat übrigens ein Problem mit dem Netzwerk, da steigen regelmäßig Adapter aus. Nur so als Vorwarnung, falls jemand sein Heil in node18 suchen sollte...
Wobei man da nochmal rausfinden muss was los ist und was es genau ist
-
Ich vermute da was aus der Richtung 'crypto' / Passwortverschlüsselung.
Diverse Adapter werden ausgeloggt, kommen dann aber wieder in die cloud des Herstellers, um dann ein paar Minuten später wieder rauszufliegen.
Besonders beim tado-Adapter und nodejs 18.8.0 fällt mir das auf, bis nodejs 18.7.0 war das i.O.Ich warte mal ein nodejs-Update auf 18.9.0 ab, bevor ich da genauer schaue.
Ist aber auch hier komplett OT...
-
@zeron850 sagte in Steigender RAM Verbrauch normal?:
Der Odroid C4 hat allerdings nur 3,6 bzw. 3,7 GB RAM. Von daher wird das mit den 4 GB schwierig.
der c4 hat -oh wunder- 4 GB RAM.
davon aber etwas für die Grafik abgezwackt.Damit müsste ioBroker ausreichend gut bestückt sein.
welches OS nutzst du?
Warum kein Armbian? -
@dp20eic
@HomoranDanke für die Tipps und ich habe jetzt mal den RAM für der User iobroker auf 2G eingeschränkt. Mal sehen ob dieser sich dran hält
Einen Neustart muss ich aber nicht machen?
Ich nutze als OS Dietpi und das System ist sehr einfach zu handhaben und läuft extrem stabil bei mir. Armbian habe ich zwar mal gehört aber bislang keine Erfahrung damit gesammelt. Dietpi ist für Einsteiger wie mich sehr einfach in der Handhabung.
-
Hast du denn in dem Zug auch nodejs auf 16 gehoben? Da scheint es ja auch evtl. Issues mit deiner Version 14 zu geben.
-
Nein aktuell noch nicht. Ich möchte da noch warten. Wenn ich den User auf 2G einschränke müsste das doch auch in der Admin angezeigt werden? Dort stehen nach wie vor die vollen 3.7G
-
@zeron850 sagte in Steigender RAM Verbrauch normal?:
Dort stehen nach wie vor die vollen 3.7G
Das ist der im Gesamtsystem vorhandene Arbeitsspeicher.
Ich weiß auch nicht was du dir von der Beschränkung auf 2 GB versprichst. Dann geht dir halt bei 2 GB auf dem sog. Heap die Luft aus. -
Ich bin offen für alle Lösungen. Wie löse ich das Problem dann?