Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. REDIS will be back

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.7k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    875

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

REDIS will be back

Scheduled Pinned Locked Moved Tester
104 Posts 23 Posters 25.2k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • BluefoxB Offline
    BluefoxB Offline
    Bluefox
    wrote on last edited by
    #43

    @pepp86:

    Hallo,

    ich habe heute mal auf redis umgeschwenkt, es funktioniert auch alles gut und sehr performant. Allerdings habe ich eine sehr große Datenstruktur unterhalb von javascript. Diese Werte werden nicht automatisch wieder gefüllt. Gibt es eine Möglichkeit alle states vorher zu exportieren und nach dem Wechsel auf redis wieder einzuspielen? Über den Struktur Ex-/Import wird leider nur die Struktur geschrieben, nicht aber die values. Durch die fehlenden Values laufen natürlich die meisten meiner Skripte nicht und es werden somit auch die Daten nicht neu gefüllt.

    Danke und Gruß `
    Leider momentan nicht.

    Aber ich kann mir gut vorstellen einen JS-Skript zu schreiben welches alle States ausliest und als JSON speichert.

    Und auch ein Skript welches dann bei REDIS die Werte einspielt. Sollte 10 Zeilen sein. Vielleicht hilft dir jemand.

    1 Reply Last reply
    0
    • P Offline
      P Offline
      pepp86
      wrote on last edited by
      #44

      @Bluefox:

      @pepp86:

      Hallo,

      ich habe heute mal auf redis umgeschwenkt, es funktioniert auch alles gut und sehr performant. Allerdings habe ich eine sehr große Datenstruktur unterhalb von javascript. Diese Werte werden nicht automatisch wieder gefüllt. Gibt es eine Möglichkeit alle states vorher zu exportieren und nach dem Wechsel auf redis wieder einzuspielen? Über den Struktur Ex-/Import wird leider nur die Struktur geschrieben, nicht aber die values. Durch die fehlenden Values laufen natürlich die meisten meiner Skripte nicht und es werden somit auch die Daten nicht neu gefüllt.

      Danke und Gruß `
      Leider momentan nicht.

      Aber ich kann mir gut vorstellen einen JS-Skript zu schreiben welches alle States ausliest und als JSON speichert.

      Und auch ein Skript welches dann bei REDIS die Werte einspielt. Sollte 10 Zeilen sein. Vielleicht hilft dir jemand. `

      ok. Habe mir jetzt "Quick&Dirty" die setState befehle ins Log ausgeben lassen und nach der Umstellung in ein Skript gepackt. Nu sind alle States wieder da und regis läuft fehlerfrei bis jetzt.

      1 Reply Last reply
      0
      • ruhr70R Offline
        ruhr70R Offline
        ruhr70
        wrote on last edited by
        #45

        Kannst Du Dein quick & Dirty Skript posten? ;-)

        Gesendet von iPad mit Tapatalk

        Adapter: Fritzbox, Unify Circuit
        Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

        1 Reply Last reply
        0
        • P Offline
          P Offline
          pepp86
          wrote on last edited by
          #46

          @ruhr70:

          Kannst Du Dein quick & Dirty Skript posten? ;-)

          Gesendet von iPad mit Tapatalk `

          Hab mich jetzt noch kurz mit dem Schreiben in eine Datei befasst und folgendes Skript genutzt:

          var fs = require('fs');
          
          var cacheSelectorState = $('state[state.id=javascript.0.*]');
              cacheSelectorState.each(function (id, i) {
                  var val = getState(id).val;
          	string = "setState('"+id+"', '"+val+"');\n";
                  fs.appendFileSync("/opt/iobroker/states.txt", string); 
          });
          
          

          Damit werden alle states aus javascript.0.* in die Datei /opt/iobroker/states.txt als setState Kommando geschrieben. Diese Kommandos kann man dann nach der Umstellung auf redis einfach in ein neues Skript packen und einmalig ausführen.

          1 Reply Last reply
          0
          • ruhr70R Offline
            ruhr70R Offline
            ruhr70
            wrote on last edited by
            #47

            perfekt!

            Danke!!

            :-)

            Adapter: Fritzbox, Unify Circuit
            Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

            1 Reply Last reply
            0
            • paul53P Offline
              paul53P Offline
              paul53
              wrote on last edited by
              #48

              @pepp86:

                 string = "setState('"+id+"', '"+val+"');\n";
              ```` `  
              

              Damit sind alle Werte nach der Abarbeitung der setState() vom Typ "string". Das dürfte einige Warnungen des JS-Adapters erzeugen und Probleme machen, wenn man mit den Werten rechnen will.

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              1 Reply Last reply
              0
              • P Offline
                P Offline
                pepp86
                wrote on last edited by
                #49

                @paul53:

                @pepp86:

                   string = "setState('"+id+"', '"+val+"');\n";
                ```` `  
                

                Damit sind alle Werte nach der Abarbeitung der setState() vom Typ "string". Das dürfte einige Warnungen des JS-Adapters erzeugen und Probleme machen, wenn man mit den Werten rechnen will. `

                var fs = require('fs');
                
                var cacheSelectorState = $('state[state.id=javascript.0.*]');
                    cacheSelectorState.each(function (id, i) {
                        var val = getState(id).val;
                        type = getObject(id).common.type;
                        if(type == "number") {
                            string = "setState('"+id+"', "+val+");\n";
                        } else {
                            string = "setState('"+id+"', '"+val+"');\n";
                        }
                        fs.appendFileSync("/opt/iobroker/states.txt", string); 
                });
                

                So kann man auch noch den Type abfragen und entsprechend den String ändern. Das hatte ich noch nicht bedacht.

                Wie gut, dass es Foren gibt :-)

                1 Reply Last reply
                0
                • paul53P Offline
                  paul53P Offline
                  paul53
                  wrote on last edited by
                  #50

                  @pepp86:

                  So kann man auch noch den Type abfragen und entsprechend den String ändern. Das hatte ich noch nicht bedacht. `
                  Fehlt noch der Test auf Type "boolean". Oder besser

                  var fs = require('fs');
                  
                  var cacheSelectorState = $('state[state.id=javascript.0.*]');
                  cacheSelectorState.each(function (id, i) {
                      var val = getState(id).val;
                      var zk = "setState('"+id+"', "+val+");\n";
                      if(typeof val === "string") zk = "setState('"+id+"', '"+val+"');\n";
                      fs.appendFileSync("/opt/iobroker/states.txt", zk);
                  });
                  

                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                  1 Reply Last reply
                  0
                  • P Offline
                    P Offline
                    pepp86
                    wrote on last edited by
                    #51

                    @paul53:

                    @pepp86:

                    So kann man auch noch den Type abfragen und entsprechend den String ändern. Das hatte ich noch nicht bedacht. `
                    Fehlt noch der Test auf Type "boolean". Oder besser

                    var fs = require('fs');
                    
                    var cacheSelectorState = $('state[state.id=javascript.0.*]');
                    cacheSelectorState.each(function (id, i) {
                        var val = getState(id).val;
                        var zk = "setState('"+id+"', "+val+");\n";
                        if(typeof val === "string") zk = "setState('"+id+"', '"+val+"');\n";
                        fs.appendFileSync("/opt/iobroker/states.txt", zk);
                    });
                    ```` `  
                    

                    Dabei fallen aber bei mir wieder werte durch die als "number" gespeichert sind.

                    1 Reply Last reply
                    0
                    • paul53P Offline
                      paul53P Offline
                      paul53
                      wrote on last edited by
                      #52

                      @pepp86:

                      Dabei fallen aber bei mir wieder werte durch die als "number" gespeichert sind. `
                      Sind die Werte wirklich als "number" gespeichert oder ist nur common.type = "number" ?

                      typeof val ermittelt den tatsächlich gespeicherten Typ.

                      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                      1 Reply Last reply
                      0
                      • P Offline
                        P Offline
                        pepp86
                        wrote on last edited by
                        #53

                        @paul53:

                        @pepp86:

                        Dabei fallen aber bei mir wieder werte durch die als "number" gespeichert sind. `
                        Sind die Werte wirklich als "number" gespeichert oder ist nur common.type = "number" ?

                        typeof val ermittelt den tatsächlich gespeicherten Typ. `

                        Jap. typeof val liefert für die Werte number zurück. Gerade getestet.

                        1 Reply Last reply
                        0
                        • paul53P Offline
                          paul53P Offline
                          paul53
                          wrote on last edited by
                          #54

                          @pepp86:

                          Dabei fallen aber bei mir wieder werte durch die als "number" gespeichert sind. `
                          Weshalb dann das ?

                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                          1 Reply Last reply
                          0
                          • P Offline
                            P Offline
                            PrinzEisenherz1
                            wrote on last edited by
                            #55

                            Ich hab da mal ne frage! Lässt sich auch n externer REDIS - Server einbinden? Ich hab iobroker auf einen pi laufen und könnte einen REDIS-Server auf der Synology betreiben! Geht sowas und würde sowas Sinn machen?

                            Gruß Johnny

                            Intel-NUC mit ProxMox: ioBroker,SQL, logging Strom- Gas- u. Wasserzähler;10Zoll Tab im Flur für VIS; weiteres: Homematic CCU2, Homeduino, Kameras, selbstgebaute Wetterstation;

                            1 Reply Last reply
                            0
                            • apollon77A Offline
                              apollon77A Offline
                              apollon77
                              wrote on last edited by
                              #56

                              Dem iobroker ist am Ende egal wo der läuft. Du gibts ja eine IP und nen Port an und dahin verbindet er sich.

                              Also: sollte kein Problem sein.

                              "localhost" hat ggf weniger Netzwerklatenz, aber das ist quasi auch schon alles

                              Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                              • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                              • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                              1 Reply Last reply
                              0
                              • P Offline
                                P Offline
                                PrinzEisenherz1
                                wrote on last edited by
                                #57

                                Danke für die Info! Jetzt bloß noch ne frage, wo stelle ich bei iobroker dann die IP und den Port für den redis ein?

                                Gruß Johnny

                                Intel-NUC mit ProxMox: ioBroker,SQL, logging Strom- Gas- u. Wasserzähler;10Zoll Tab im Flur für VIS; weiteres: Homematic CCU2, Homeduino, Kameras, selbstgebaute Wetterstation;

                                1 Reply Last reply
                                0
                                • P Offline
                                  P Offline
                                  PrinzEisenherz1
                                  wrote on last edited by
                                  #58

                                  Halt, Habs gefunden! Stand auf der ersten Seite!

                                  Wer lesen kann ist klar im Vorteil….. Lach

                                  Johnny

                                  Intel-NUC mit ProxMox: ioBroker,SQL, logging Strom- Gas- u. Wasserzähler;10Zoll Tab im Flur für VIS; weiteres: Homematic CCU2, Homeduino, Kameras, selbstgebaute Wetterstation;

                                  1 Reply Last reply
                                  0
                                  • P Offline
                                    P Offline
                                    PrinzEisenherz1
                                    wrote on last edited by
                                    #59

                                    Hi zusammen!

                                    Ich habe heute auch mal auf REDIS umgestellt! Ich habe auf der Synology einen REDIS-Server am laufen und hab den PI damit verbunden.

                                    Jetzt hab ich mir mal den Freien Speicher vom PI angekuckt!

                                    Also ich kann nicht behaupten das der Freie Speicher mehr wird!

                                    Ganz im Gegenteil.
                                    1058_rpi_memory.png
                                    1058_rpi_memory1.png
                                    Als ich REDIS aktiviert habe, hatte ich einen Neustart durchgeführt und dann sieht es zuerst auch unverändert auch und dann fällt auf einen Schlag der freie Speicher.

                                    Seltsam! Ist das anfangs normal?

                                    Gruß

                                    Johnny

                                    Intel-NUC mit ProxMox: ioBroker,SQL, logging Strom- Gas- u. Wasserzähler;10Zoll Tab im Flur für VIS; weiteres: Homematic CCU2, Homeduino, Kameras, selbstgebaute Wetterstation;

                                    1 Reply Last reply
                                    0
                                    • HomoranH Do not disturb
                                      HomoranH Do not disturb
                                      Homoran
                                      Global Moderator Administrators
                                      wrote on last edited by
                                      #60

                                      Ob das an deiner speziellen Konstellation liegt????

                                      Was den freien Speicher angeht ist das eine Linux-Eigenheit.

                                      Jeglicher ungenutzter Speicher wird den laufenden Prozessen zugeordnet, damit dort mehr zur Verfügung steht.

                                      Was soll Speicher denn ungenutzt herumliegen?

                                      Üblicherweise ist das kein Grund zur Panik. Linux pendelt das normalerweise gut ein.

                                      Gruß

                                      Rainer

                                      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                      1 Reply Last reply
                                      0
                                      • P Offline
                                        P Offline
                                        PrinzEisenherz1
                                        wrote on last edited by
                                        #61

                                        Mich wundertdas ohne redis immer zwischen 200 und 400 MB freier Speicher waren und mit redis ein rapieder Sturz auf unter 40MB

                                        Intel-NUC mit ProxMox: ioBroker,SQL, logging Strom- Gas- u. Wasserzähler;10Zoll Tab im Flur für VIS; weiteres: Homematic CCU2, Homeduino, Kameras, selbstgebaute Wetterstation;

                                        1 Reply Last reply
                                        0
                                        • apollon77A Offline
                                          apollon77A Offline
                                          apollon77
                                          wrote on last edited by
                                          #62

                                          Dann schau mal genau in top rein und sag wie die echte Speichernutzung ist.

                                          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          776

                                          Online

                                          32.6k

                                          Users

                                          82.1k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe