Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Error/Bug
    4. mqtt Adapter 4.0.7 Hohe CPU Load

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    mqtt Adapter 4.0.7 Hohe CPU Load

    This topic has been deleted. Only users with topic management privileges can see it.
    • mickym
      mickym Most Active @lakelounge last edited by mickym

      @lakelounge Das Problem ist - dass Du sowohl publishen willst - also auch Daten sammelst - das ist bei Senden von Zuständen Endlosschleifen vorprogrammiert.

      Ich empfehle Dir wenn Du einen mosquitto Broker hast - genauso wie ich 2 Instanzen zu nehmen - eine um quasi Zugriff auf den gesamten Inhalt des Brokers zu haben - und die 2. Instanz um zu publishen.

      In dieser Instanz wird der mosquitto abgebildet und einzelne States gepublished - die es nicht in einem Adapter gibt:

      e6017a32-1713-4dc0-9494-7a9b5600670f-image.png

      So sieht meine Instanz aus, um quasi dem Inhalt meines gesamten mosquitto Brokers im iobroker zur Verfügung zu haben - damit kannst auch einzelne States publishen indem Du einfach Datenpunkte anlegst.

      Die 2. Instanzen dient dazu um ganze Objekt Bäume eines Adapters zum Beispiel tr-064 unter einem Präfix wie bei Dir zu publishen. Es wird aber nicht mehr importiert - deswegen gibts da ein Dummy als Präfix

      Man kann die Zustände schicken - wenn Du keine Änderungen publishst. Nachdem das unter einem eigenen Präfix erfolgt, sollten Deine Geräte nichts mitbekommen. Ich mache das bewusst nicht, da mich alte Zustände nicht interessieren von der FritzBox.

      d7c031e3-2305-4cca-be4f-7663edba6dcd-image.png

      Also für die Zustände in der 2. Instanz geht das auch:

      dedeb5a4-0dc5-48a2-83e0-2630c3d4c95e-image.png

      Die Instanz mit der Du aber nur den mosquitto abbilddest und einzelne States publishst die nicht von Adaptern stammen - ist nichts angehakt.

      lakelounge 1 Reply Last reply Reply Quote 1
      • lakelounge
        lakelounge @mickym last edited by

        @mickym Wow! Herzlichen Dank für deine mega-ausführliche Antwort! Ich habe verstanden, um was es geht und werd das asap umsetzen.

        Meine Lösung wäre jetzt so gewesen:

        Bildschirmfoto 2022-09-01 um 22.11.46.png

        abonniert ist nur home/# - darauf senden alle Geräte, von denen ich Werte im ioBroker möchte
        published wird vom ioBroker nur unter lakelounge-

        Aber ich arbeite noch in Ruhe deine Anleitung durch 😉

        Danke nochmal und schönen Abend
        .

        mickym 1 Reply Last reply Reply Quote 0
        • mickym
          mickym Most Active @lakelounge last edited by mickym

          @lakelounge Nei - das Prefix muss immer mit einen / enden und ich empfehle meine Konfig. So was ist gefährlich - das gibt nur ewig lange Strings - die Topics müssen immer mit dem Trenner / - sonst gibts keine Hierarchien. 😉

          lakelounge 2 Replies Last reply Reply Quote 1
          • lakelounge
            lakelounge @mickym last edited by

            @mickym Verstehe! Und, Asche auf mein Haupt, dass ich den mqtt-Adapter verdächtigt habe! Hab einen Slash ans Ende gemacht … Deine Lösung mach ich die Tage … Man muss ja leider immer nebenbei auch noch was arbeiten 🙂

            1 Reply Last reply Reply Quote 0
            • lakelounge
              lakelounge @mickym last edited by

              @mickym hach … die Load ist wieder bei 0.14 … was ein Glück! 🙂

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

                So, moin. Hab gerade mal alles gelesen ... und alles ist gesagt dank @mickym

                1 Reply Last reply Reply Quote 2
                • SRo769
                  SRo769 last edited by SRo769

                  Hallo zusammen. Also ich habe seit 3 Tagen nach Update auf Adapter-Version 4.07 (MQTT Broker/Client) das gleiche Problem.
                  Konfiguration:
                  1x Raspberry-Pi (Dietpi) mit Node-Red und MQTT-Server
                  2x IOBroker auf 2 unterschiedlichen Proxmox-Systemen (Adapter im Client-Modus) (Proxmox-Systeme 2x Intel-NUC)

                  Konfiguration lief seit ca. 2 Jahren ohne Probleme. Seit 3 Tagen steigt nun zu unterschiedlichen Zeiten die Gesamtbelastung beider Proxmox-System bis Anschlag an und geht von allein nicht mehr runter. Das Stoppen und erneute Starten der beiden Adapter in den IOBrokern beendet den "Spuk" und alles ist wieder normal. Auf beiden System sind zusätzliche MQTT-Adapter sowohl im Server- als auch im Clientmodus aktiv. Diese verursachen die Belastung nicht.
                  Den Raspberry-Pi und seine Systeme sind bereits neugestartet und auf aktuellem Software-Stand.
                  Ich werde jetzt einen der beiden Server mal auf die biss dato laufende Version des MQTT-Adapters downgraden. Vielleicht hilft das ja erstmal.

                  Bin für weitere Ideen/Vorschläge sehr dankbar.

                  Homoran 1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators @SRo769 last edited by

                    @sro769 sagte in mqtt Adapter 4.0.7 Hohe CPU Load:

                    Bin für weitere Ideen/Vorschläge sehr dankbar.

                    Hast du die Konfiguration verglichen mit dem was hier besprochen wurde?

                    SRo769 1 Reply Last reply Reply Quote 0
                    • SRo769
                      SRo769 @Homoran last edited by

                      @homoran beide Adapter sind schon immer so eingestellt gewesen. Auf Server 1 empfängt der Adapter nur ohne etwas zu senden. Auf Server 2 sendet der Adapter nur etwas und empfängt nix. Zwischen Server1 und Server2 gibt es keine gemeinsame Daten. Beide Server hängen eben nur an dem einen MQTT-Server.

                      lakelounge BananaJoe 2 Replies Last reply Reply Quote 0
                      • lakelounge
                        lakelounge @SRo769 last edited by lakelounge

                        @sro769 schau mal mit MQTT-Explorer, in dem du dir alles (/#) anzeigen lässt, ob, so wie bei mir, bei einem Device Tausende von Meldungen auflaufen. Bei mir war es wohl ein verwaister Datenpunkt. Seit ich den gelöscht und die Dinge nach der Anleitung von @mickym umgestellt habe, läuft alles wieder.

                        So sah das aus (nach wenigen Sekunden - siehe stat, 47.615 Meldungen). Nach einer Minuten waren über 200.000 Meldungen aufgelaufen.
                        delock.png

                        Der Datenpunkt war von einem Testscript, das aber nicht gelaufen ist. Also nur ein „rumliegender“ Datenpunkt ohne Sinn und Nutzen …

                        SRo769 1 Reply Last reply Reply Quote 0
                        • SRo769
                          SRo769 @lakelounge last edited by

                          @lakelounge ich habe die zu übermittelnden Daten schon sehr genau definiert. Trotzdem, zur Kontrolle habe ich mal den Test am Mqtt-Server gemacht mit folgendem Ergebnis:
                          0e327944-8259-4ad6-b4a1-71f2f2c62ebc-image.png

                          Da passiert auch nicht so viel. Das System läuft in dieser Konfig bereits 2 Jahre und das ohne jedwede Aussetzer. Die Signale sind quasi "handverlesen" und haben auf dem sendenden Server1 auch nur eine lokale Quelle. Die hohe CPU-Last/Load/Network-Traffic ist jetzt an 3 Tagen zu unterschiedlichen Zeiten (volle Stunde...!) aufgetreten und lässt sich durch stoppen der Adapter heilen. Wenn ich den MQTT-Server (Raspberry) neu starte, kann ich die hohe Belastung auch manuell hervorrufen. Ein Neustart der beiden Adapter richtet es dann wieder. Diese Probleme hatte ich in der Vergangenheit so definitiv nicht. Die Systeme werden permanent überwacht und alarmieren im Falle einer Abweichung hinsichtlich Belastung/CPU-Temp. etc.

                          mickym 1 Reply Last reply Reply Quote 0
                          • BananaJoe
                            BananaJoe Most Active @SRo769 last edited by BananaJoe

                            @sro769 sagte in mqtt Adapter 4.0.7 Hohe CPU Load:

                            @homoran beide Adapter sind schon immer so eingestellt gewesen. Auf Server 1 empfängt der Adapter nur ohne etwas zu senden. Auf Server 2 sendet der Adapter nur etwas und empfängt nix. Zwischen Server1 und Server2 gibt es keine gemeinsame Daten. Beide Server hängen eben nur an dem einen MQTT-Server.

                            könntest du trotzdem mal deine Adapter-Konfigurationen posten? "Schon immer" oder "ging doch früher" mag ich in meinem Admin-Leben gar nicht mehr hören, das kann auch ein Fehler sein das vorher ging

                            SRo769 1 Reply Last reply Reply Quote 1
                            • mickym
                              mickym Most Active @SRo769 last edited by mickym

                              @sro769 sagte in mqtt Adapter 4.0.7 Hohe CPU Load:

                              Die hohe CPU-Last/Load/Network-Traffic ist jetzt an 3 Tagen zu unterschiedlichen Zeiten (volle Stunde...!) aufgetreten und lässt sich durch stoppen der Adapter heilen. Wenn ich den MQTT-Server (Raspberry) neu starte, kann ich die hohe Belastung auch manuell hervorrufen.

                              Ich behaupte mal Du schickst Zustände und nur Änderungen. Deswegen hast Du solange keine Endlosschleife, bis sich der eine Punkt ändert. 😉 - Wann das ist - kannst nur Du beantworten. 😉 - Vielleicht auch mal Log und debug anschauen. 😉

                              1 Reply Last reply Reply Quote 0
                              • SRo769
                                SRo769 @BananaJoe last edited by

                                @bananajoe das ist die Konfig des sendenden Servers:
                                2b0223c1-db6b-42bd-9556-13d0d88723d3-image.png

                                mickym 1 Reply Last reply Reply Quote 0
                                • mickym
                                  mickym Most Active @SRo769 last edited by mickym

                                  @sro769 Ich hab das in dem anderen Thread schon mal geschrieben:

                                  Wenn du NICHTS in das Subscribe Pattern schreibst - dann nimmt er AUTOMATISCH # - also ALLES. Deshalb bekommst Du alles was Du schreibst postwendend zurück und die Endlosschleife ist perfekt. Wenn diese Instanz nichts subsriben soll - dann musst Du einen Dummy nehmen - schau mal in meinen Screenshot - da steht "nothing". Ausserdem wird er nichts machen mit diesen Einstellungen, wenn Du kein Präfix mitgibst.

                                  Habe ich aber hier alles beschrieben:
                                  https://forum.iobroker.net/topic/57365/mqtt-broker-empfängt-daten-sendet-aber-nicht-an-client/8?_=1662032439387

                                  SRo769 2 Replies Last reply Reply Quote 0
                                  • SRo769
                                    SRo769 @mickym last edited by

                                    @mickym wenn du mir jetzt noch sagst, wie ich da machen soll... der Adapter läuft als Client. Unter "Subscribe Pattern" kann ich zwar was eintragen aber nichts speichern. Der Speicher-Button bleibt ausgegraut. Wenn ich noch eine andere Option ändere und den Button damit aktiviere, ist der Eintrag unter Subscribe Pattern wech... Wenn ich dann wieder was eintrage und auf Speichern klicke, ist nix gepeichert....

                                    mickym 1 Reply Last reply Reply Quote 0
                                    • SRo769
                                      SRo769 @mickym last edited by

                                      @mickym laut Log (höchste Detail-Stufe) bekomme ich auch keine Nachricht zurück, die zuvor gesendet wurde

                                      1 Reply Last reply Reply Quote 0
                                      • mickym
                                        mickym Most Active @SRo769 last edited by

                                        @sro769 Subscribe Pattern was reinschreiben und dann ENTER drücken - dann wird aus dem Text so eine ovale Kachel, wie im Screenshot.

                                        SRo769 1 Reply Last reply Reply Quote 0
                                        • SRo769
                                          SRo769 @mickym last edited by

                                          @mickym Shit, Asche auf mein Haupt. Da war ich aber schon lange nicht mehr dran. Habe ich jetzt entsprechend nachgetragen und werde das beobachten. Soweit erst mal danke.

                                          mickym 1 Reply Last reply Reply Quote 0
                                          • mickym
                                            mickym Most Active @SRo769 last edited by mickym

                                            @sro769 und trotzdem Präfix mit abschließendem / vergeben- der Adapter schmeißt in der Regel alles weg, das genauso wie ein Adapterpfad beginnt

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            666
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            7
                                            54
                                            2808
                                            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