Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Node.exe 100% CPU

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Node.exe 100% CPU

    This topic has been deleted. Only users with topic management privileges can see it.
    • V
      vlink last edited by

      hat echt niemand das problem??

      759_node.jpg

      1 Reply Last reply Reply Quote 0
      • M
        manuelgrasgruen.it last edited by

        Ich habe offensichtlich das gleiche Problem mit ioBroker 3.5.10 / Node-Red auf W10. Nach einer Weile problemfreiem Betrieb (einige Stunden bis wenige Tage) geht die CPU-Belastung durch die node.exe Prozesse nach oben. Im Log ist zu sehen, dass plötzlich der Node-Red Port belegt ist. Dann wird Node-Red offensichtlich ständig neu gestartet. Den Port habe ich testweise von 1880 auf 1881 geändert.

        Node.js: v10.15.1
        NPM: 6.4.1

        node-red.0	2019-02-18 13:59:11.067	info	node-red exited with 1
        node-red.0	2019-02-18 13:59:11.047	error	
        node-red.0	2019-02-18 13:59:11.047	error	18 Feb 13:59:11 - [error] Error: port in use
        node-red.0	2019-02-18 13:59:11.047	error	
        node-red.0	2019-02-18 13:59:11.047	error	18 Feb 13:59:11 - [error] Unable to listen on http://127.0.0.1:1881/
        node-red.0	2019-02-18 13:59:11.011	warn	
        node-red.0	2019-02-18 13:59:11.011	warn	18 Feb 13:59:11 - [warn] Projects disabled : set editorTheme.projects.enabled=true to enable
        node-red.0	2019-02-18 13:59:08.495	warn	
        node-red.0	2019-02-18 13:59:08.495	warn	18 Feb 13:59:08 - [warn] undefined
        node-red.0	2019-02-18 13:59:08.372	warn	
        node-red.0	2019-02-18 13:59:08.372	warn	18 Feb 13:59:08 - [warn] undefined
        node-red.0	2019-02-18 13:59:07.838	info	Starting node-red: --max-old-space-size=128 C:\iobroker\node_modules\iobroker.node-red/node_modules/node-red/red.js -v --settings C:\iobroker\node_modules\iobroker.node-red/userdata/settings.js
        node-red.0	2019-02-18 13:59:07.673	info	Starting node-red: --max-old-space-size=128 C:\iobroker\node_modules\iobroker.node-red/node_modules/node-red/red.js -v --settings C:\iobroker\node_modules\iobroker.node-red/userdata/settings.js
        

        Hat jemand einen Hinweis?

        Danke
        / Manuel

        sigi234 1 Reply Last reply Reply Quote 0
        • sigi234
          sigi234 Forum Testing Most Active @manuelgrasgruen.it last edited by

          @manuelgrasgruen-it sagte in Node.exe 100% CPU:

          Node.js: v10.15.1

          Ja das :

          Node.js: v10.15.1

          1 Reply Last reply Reply Quote 0
          • apollon77
            apollon77 last edited by

            Welcher Prozess genau ist es denn mit den 100% Schau mal in die Kommandozeile des Prozesses? Ist es ein Adapter oder der js-controller? Wie gross ist die Installation denn so? Wieviele States und Objekte (steht im Admin unter Objekte rechts oben).

            1 Reply Last reply Reply Quote 0
            • M
              manuelgrasgruen.it last edited by

              @sigi234 Gibt es ein Problem mit node.js 10.15.1 ? Andere Version einsetzen?

              @apollon77 Es ist nicht ein Prozess auf 100%, sondern die node.exe Prozesse summieren sich auf 100%. Das auch nicht durchgehend, sondern alle paar Sekunden für ein paar Sekunden. Ich denke das ist, da der Adapter offensichtlich ständig wieder gestartet wird.

              Die Installation ist noch ziemlich klein, hab noch kaum was eingerichtet. Allerdings zeigt er bereits: Objekte: 980, Zustände: 844
              Ist das normal?

              Danke

              sigi234 apollon77 lobomau 3 Replies Last reply Reply Quote 0
              • sigi234
                sigi234 Forum Testing Most Active @manuelgrasgruen.it last edited by

                @manuelgrasgruen-it sagte in Node.exe 100% CPU:

                @sigi234 Gibt es ein Problem mit node.js 10.15.1 ? Andere Version einsetzen?

                Diese Version wird noch nicht unterstützt.....

                1 Reply Last reply Reply Quote 0
                • apollon77
                  apollon77 last edited by

                  Speziell auf Windows gab es probleme, die aber mit dem latest js-controller (1.5.7) gefixt sein sollten. Also gern js-controller Upgrade testen.

                  1 Reply Last reply Reply Quote 0
                  • apollon77
                    apollon77 @manuelgrasgruen.it last edited by

                    @manuelgrasgruen-it Das kommt darauf an um welchen Adapter es sind handelt. Ja es gibt welche die nach Schedule neu gestartet werden ... welcher Adapter ists denn?

                    1 Reply Last reply Reply Quote 0
                    • lobomau
                      lobomau @manuelgrasgruen.it last edited by lobomau

                      @manuelgrasgruen-it

                      Die Installation ist noch ziemlich klein, hab noch kaum was eingerichtet. Allerdings zeigt er bereits: Objekte: 980, Zustände: 844
                      Ist das normal?

                      Danke

                      Das ist normal und nicht viel. Bei mir steht:
                      Objekte: 15037, Zustände: 13253

                      1 Reply Last reply Reply Quote 0
                      • M
                        manuelgrasgruen.it last edited by

                        Ich habe nun mal ein js-controller update gemacht. Wenn es wieder auftritt werde ich wohl node.js downgraden müssen.

                        @apollon77 Der Node-Red Adapter. Alle paar Sekunden wird wohl kein Adapter neu gestartet werden. Und es taucht immer erst nach einigen Stunden auf und bemängelt dann immer den blockierten Port.

                        Danke

                        1 Reply Last reply Reply Quote 0
                        • apollon77
                          apollon77 last edited by

                          Naja dann musst Du rausfinden was noch auf 1881 läuft ... oder stoppe mal ioBroker und schau das alle Prozesse gestoppt sind und starte neu

                          1 Reply Last reply Reply Quote 0
                          • M
                            manuelgrasgruen.it last edited by

                            js-controller update hat wohl geholfen. Bisher läuft es stabil ohne große CPU Auslastung.

                            Ich glaube nicht, dass irgendetwas anderes den Port 1881 nutzt. Vor allem war es beim 1880 gleich und beim Neustart des Adapters passt es ja immer für eine Weile.

                            1 Reply Last reply Reply Quote 0
                            • A
                              aleks-83 last edited by aleks-83

                              Hi,

                              ich bin mit meinem System aus der Ubuntu VM ins native Windows 10 64 bit umgezogen und habe auch eine CPU Auslastung von fast dauerhaften 100%.
                              Der Prozess node.exe taucht 33 ! mal im Taskmanager auf.
                              Runtimebroker.exe 8 mal

                              Aber komischerweise Opera auch 15x. Obwohl er nur 1x geöffnet ist.

                              Die node.exe Prozesse sind aber meist vorne mit dabei und dürften den Großteil der CPU Last ausmachen.
                              Unbenannt.png

                              Beende ich iobroker (iobroker stop) beruhigt sich der CPU nach 1-2 Minuten auf 10-12%

                              1 Reply Last reply Reply Quote 0
                              • apollon77
                                apollon77 last edited by

                                Ok, Aktive Instazen 32 plus eine für den js-controller ergibt 33 Prozesse. Das passt. Der "Runtimebroker" hat mit ioBroker nichts zu tun.

                                Bei Opera oder Browsern haben teilweise eigene Tabs eigene Prozesse damit nicht alles abschmiert wen einer crasht.

                                Je nachdem was genau jetzt deine Adapter so alles machen müsstest Du schauen. in ioBroker hat jeder Adapterprozess unter "system.adapter.Name" einige Statistik-States (ggf musst Du Filter in der Objektansicht rausnehmen das Du die States siehst). Da siehst Du auch wieviel CPU jeder Prozess so braucht. So kannst Du den Lastverursachern auf die Schliche kommen.

                                Ingo F

                                1 Reply Last reply Reply Quote 0
                                • A
                                  aleks-83 last edited by

                                  Bei den Prozessen unter "system.adapter.name" steht überall "0.00 % of one core"
                                  Aber ioBroker nutzt auf jeden Fall alle 4 Kerne aus, das sehe ich im Taskmanager.

                                  Habe jetzt mal alle Adapter deaktiviert ausser admin.
                                  Dann läuft er super mit 15-20% CPU-Last.
                                  Je mehr Adapter ich aktiviere (egal welche) desto mehr nimmt die Last zu.
                                  Bei 20 zugeschalteten Adaptern schwankt er schon zwischen 50-80%
                                  ab ca. 15 Adaptern steht konstant 100% an.

                                  Managed Windows das ganz so viel schlechter als Linux?
                                  Als ioBroker noch in einer Ubuntu 18.04 VM unter Proxmox lief brauchte die gleiche ioBroker Instanz nur 20-30% CPU.

                                  Ich werde mal versuchen unter Windows eine Ubuntu VM laufen zu lassen und die Instanz dort zu installieren.

                                  Stabilostick 1 Reply Last reply Reply Quote 0
                                  • Stabilostick
                                    Stabilostick @aleks-83 last edited by

                                    @aleks-83

                                    Ich habe Dir eine Chat-Nachricht wegen der CPU-Last geschrieben. Lass uns das zusammen ansehen.

                                    1 Reply Last reply Reply Quote 1
                                    • Stabilostick
                                      Stabilostick last edited by Stabilostick

                                      Vorläufiges Ergebnis der Untersuchung zusammen mit @aleks-83:

                                      System-Ausgangszustand

                                      • NUC mit CPU Intel Celeron J3455 @ 1.50GHz
                                        • Average CPU Mark: 2110
                                        • Cores: 4, Typical TDP: 10 W
                                      • 16GB RAM
                                      • Software
                                        • Windows 10
                                        • Avast Antivirus
                                        • Opera Webbrowser
                                        • Etliches an kleinen Hilfsprogrämmchen im Hintergrund
                                          • Java-Updater
                                          • Buhl-Updater
                                          • Unify
                                          • ...
                                      • ioBroker mit neuem Windows Installer installiert
                                        • 32 Adapterinstanzen
                                        • etwa 900 Ereignisse/15s im System, javascript hat alle abonniert
                                        • zum Zeitpunkt der Prüfung wurden viele Ereignisse vom upnp-Adapter erzeugt. (etwa 500/15s)
                                      • CPU schwankt zwischen 70% und 100% Last

                                      CPU-Nutzung durch ioBroker

                                      • ioBroker hat für den js-controller Node.js-Prozess mit den Datenbanken durchweg etwa 5% CPU benötigt.
                                      • Jeder Adapter hat etwa 0,1-0,5% CPU verwendet.
                                      • Alle 15s hat jeder Adapter einmal WMIC aufgerufen. Der Prozess hat dann für ca. 1s jeweils etwa 3-5% CPU genutzt
                                      • Der WMIPRVSE-Prozess hat als Gegenstelle für die WMI-Abfragen hat ebenfalls etwa 2-5% CPU Last erzeugt

                                      CPU-Nutzung durch Anwendungen und System

                                      • Teamviewer 10-20%
                                      • Opera 20-50% (wenn was gemacht wurde, sonst <5%)
                                      • ProcessExplorer 10%
                                      • Avast System Dienst 5%
                                      • Desktop-Manager 3%, Java-Updater 1%, Buhl 0,5%, ......

                                      Rechenspiele
                                      Damit ergibt sich die Gesamtsystemlast für ioBroker zu:

                                      jscontroller + 32*Adapter + WMIC-Abfragen für 32 Instanzen mit jeweils 1s Dauer alle 15s
                                      5% + 32*0,5 + (1s*32/15s) * 5% = ~30% im Maximum

                                      Gesamtsystemlast pi mal Daumen hochgerechnet:

                                      Prozess CPU-Last
                                      iobroker 30% im Maximum
                                      TeamViewer 15%
                                      Process Explorer 10%
                                      Avast Antivir 5%
                                      30x irgendwelche kleinen Prozesse à 0,5% 15%
                                      =====
                                      Summe 70%
                                      Opera zusätzlich mit Admin aufrufen 40%
                                      =====
                                      Summe 110% 😉

                                      Und das entspricht (trotz Milchmädchenrechnung) dem, was wir am laufenden System auch beobachtet haben.

                                      Ergebnisse also für ioBroker-Server (mit kleiner CPU) auf Windows:

                                      • Einen Rechner mit kleiner CPU mit TeamViewer fernzusteuern kostet locker 1/5 der Systemperformance.
                                      • Auf dem Server mit kleiner CPU sollte man keinen Webbroswer aufgerufen. Wenn doch, verursacht er schnell 1/4 oder mehr CPU-Last und verlangsamt zusätzlich die Serverprozesse.
                                      • Datenbankdateien oder Datenbankordner müssen unbedingt vom Virenscan ausgenommen werden, da der Virenscanner sonst übermäßig CPU-Ressourcen verbraucht. Auf Windows ist der eingebautet Defender zu bevorzugen wegen relativ geringer CPU-Last. Der aktuelle Window Installer trägt eine entsprechende Ausnahme in den Defender ein.
                                      • Jede zusätzliche Anwendung im Hintergrund verbraucht (unnötig) CPU-Ressourcen. Deinstallieren.
                                      • Den Prozess-Ausführungsmodus für dedizierte ioBroker-Server umstellen auf "Hintergrunddienste":
                                        5e7dcc3a-f096-49d3-9520-d3faa6f0dcdf-grafik.png

                                      Und abschließend:

                                      • Die Node.js-Prozesse und damit ioBroker ist hier nicht vorwiegend an der 100% CPU-Last verantwortlich. Haltet Eure Serversysteme schlank.

                                      PS: Und wenn man kleine Linux-Systeme hernimmt und sagt, wie toll die doch sind:
                                      Die haben i.d.R. kein grafische Benutzeroberfläche aktiv und führen keine Antiviren-Programme oder Webbrowser aus, kein Homebanking und keine Maustreiber von Logitech. Es liegt bei uns.

                                      1 Reply Last reply Reply Quote 3
                                      • A
                                        aleks-83 last edited by aleks-83

                                        Moin,

                                        was für eine Zusammenfassung 🤣 👌
                                        Dir auch nochmal vielen Dank für die persönliche Hilfe und das gute Gespräch.

                                        Deine Beobachtungen kann ich so zu 100% unterschreiben.
                                        Ich habe nach unserem Telefonat noch etwas ausprobiert und aufgeräumt.

                                        Insgesamt war es nicht der ioBroker selbst der die Maschine ausgelastet hat, sondern die Kombination aus ioBroker, TeamViewer, Opera und avast.
                                        Was ja eigentlich keine ungewöhnlichen Tools sind auf so einer Maschine!?

                                        Ein, bei mir sehr großer Punkt war aber auch der Info Adapter.
                                        Bei "aktuelle Systemdaten nicht lesen" war kein Haken gesetzt, und die Systemdaten wurden alle 3-10s gelesen.
                                        Wenn ich diesen Haken gesetzt habe, wurde das System um bis zu 30% weniger belastet.
                                        Ob das jetzt nur bei mit so ist, oder ob es ein Problem im Adapter ist, kann ich nicht sagen.

                                        Jetzt läuft das System bei 31 aktivierten Adaptern bei 25-30%.

                                        Den TeamViewer nutze ich nur noch wenn nötig. Den hatte ich eigentlich genutzt um den Rechner komfortabler einrichten zu können und nicht immer im Wohnzimmer den TV zu blockieren wo der NUC dran hängt (zwecks Kodi). Ja, Kodi ist auch installiert, läuft aber nur bei Bedarf.
                                        ioBroker konfiguriere ich dann nur noch von extern.
                                        Avast habe ich deinstalliert und nutze wieder den Defender.

                                        1 Reply Last reply Reply Quote 0
                                        • K
                                          klassisch Most Active last edited by

                                          Vielen Dank für die Beiträge. So sieht man mal die Lasten mit anderen Prozessoren.
                                          Auch nach meiner Beobachtung / Erfahrung ist die Defaulteinstellung des sehr hilfreichen info-Adapters paranoid (subjektive Meinung). Das scheint auch der Kampf vom user @Feuersturm zu zeigen. Es wäre prima, wenn man das Update-Intervall noch etwas in den Minutenbereich hin ausdehnen könnte und das als Default wert einstellen könnte. Ich habe die Hürde zum Eintragen in die History durch großzügige Deltabedingungen erhöht. Im Normalbetrieb ist das noch Info genug, die Kurven sind etwas gröber aber normalerweise noch aussagkräftig.
                                          Die Last durch info-Adapter und einen system-info Adapter hatte auch die Instabilitäten meines headless operierenden linuxbasierten Orange Pi Plus 2e ausgelöst.
                                          Auf meinem i5 läuft noch eine deutlich intensivere Applikation parallel und ich komme auf eine Gesamtlast von 14% bis 30%. ioBroker ist der kleinste Anteil.
                                          Immer noch aktuell; allerdings erst seit Win Update auf 1903: Wenn ich mit Remote Desktop auf dem Rechner war, dann den Remote Desktop schließe, geht die Prozessorast dramatisch hoch, was sich auch an der Temp bemerkbar macht. Wenn ich dann kurz mit UltraVNC drauf gehe und das wieder schließe ist alles wieder gut. Experimenteller Befund auf meinem System, Ursache sowie Übertragbarkeit der Beobachtung unklar. Hier also Vorsicht bzw. Augen auf.

                                          Gibt es eine einfache Möglichkeit, die gesamte ioBroker-induzierte Last zu erfassen? Ich sehe halt eine Vielzahl ununterscheidbarer ioBroker Prozesse im Taskmanager aufblitzen und muß dann schätzen oder raten.

                                          apollon77 1 Reply Last reply Reply Quote 0
                                          • apollon77
                                            apollon77 @klassisch last edited by

                                            @klassisch sagte in Node.exe 100% CPU:

                                            Es wäre prima, wenn man das Update-Intervall noch etwas in den Minutenbereich hin ausdehnen könnte und das als Default wert einstellen könnte.

                                            Dann legt dazu bitte ein GitHub Issue an. Nur solist sichergestellt das es der ENtwickler sieht und es auch nicht vergisst

                                            K 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            771
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            8
                                            30
                                            4253
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo