Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Schleifen nacheinander ausführen

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Schleifen nacheinander ausführen

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

      Hallo zusammen,

      ich würde gerne zwei Schritte für drei Server jeweils nacheinander ausführen (Schritt 2 erst, wenn Schritt 1 auf allen Servern ausgeführt wurde.

      Irgendwie werden die Schleifen aber parallel ausgeführt:

      5dbb4c1b-50ff-4392-b71c-d0a65aa51776-grafik.png

      Schritt 1 = Backup erstellen
      Schritt 2 = Backups auf NAS kopieren

      Codierknecht 1 Reply Last reply Reply Quote 0
      • Codierknecht
        Codierknecht Developer Most Active @Kuddel last edited by

        @kuddel
        Das exec wird asynchron ausgeführt.
        Du musst also das Ergebnis abwarten und verarbeiten.

        b2ed5d49-300f-4463-a74e-6eb38f610d40-image.png
        Eine Variable result musst Du manuell anlegen.

        K 1 Reply Last reply Reply Quote 0
        • K
          Kuddel @Codierknecht last edited by

          @codierknecht das bedeutet dann aber automatisch, dass der Ablauf dann nur so funktioniert:

          1. Backup Server 1
          2. Kopieren vom Backup Server 1
          3. Backup Server 2
          4. Kopieren vom Backup Server 2
          5. Backup Server 3
          6. Kopieren vom Backup Server 3
          Codierknecht 1 Reply Last reply Reply Quote 0
          • Codierknecht
            Codierknecht Developer Most Active @Kuddel last edited by Codierknecht

            @kuddel
            Nicht zwangsläufig.

            Nach 1.) wird 2.) und (nahezu) unmittelbar 3.) und 5.) ausgeführt.
            Deren Kopieraktionen starten dann jeweils, wenn das Backup beendet wurde.
            Sollte ja kein Problem sein. Das NAS kann ja problemlos aus 3 Quellen gleichzeitig Dateien erhalten.
            Wenn Du die Schritte strikt nacheinander ausführen möchtest, musst Du sie nach dem gezeigten Prinzip jeweils nach dem Erhalt des Ergebnisses starten. Das wird dann aber reichlich verschachtelt.
            Und eine Liste macht dann auch keinen Sinn.

            d4a62298-ce51-410a-9c7f-7a05f07edef4-image.png

            https://de.wikipedia.org/wiki/Nebenläufigkeit

            K 1 Reply Last reply Reply Quote 0
            • K
              Kuddel @Codierknecht last edited by

              @codierknecht das parallele Erstellen der Backups ist in meinen Augen auch kein Problem.

              Gut wäre, wenn das Kopieren erst startet, wenn alle drei Backups erstellt wurden.

              Ich kann es natürlich auch so lösen, dass wenn Server 3 fertig ist, ein DP auf true gesetzt wird, der dann in einem extra Trigger das Kopieren starten.

              Alles in einem Block wäre aber natürlich schöner.

              Codierknecht 1 Reply Last reply Reply Quote 0
              • Codierknecht
                Codierknecht Developer Most Active @Kuddel last edited by

                @kuddel sagte in Schleifen nacheinander ausführen:

                Gut wäre, wenn das Kopieren erst startet, wenn alle drei Backups erstellt wurden.

                Warum?

                Die Schritte 1+2, 3+4 und 5+6 müssen jeweils nacheinander (seriell) ausgeführt werden.
                Geht ja nicht anders, da das Backup erst abgeschlossen sein muss, bevor Dateien kopiert werden.

                Aber diese 3 Pärchen können ohne Probleme parallel ablaufen.
                Dazu ist diese ganze Nebenläufigkeit (Multi-Threading) ja auch gedacht. Spart Zeit 😉

                Ich kann es natürlich auch so lösen, dass wenn Server 3 fertig ist, ein DP auf true gesetzt wird, der dann in einem extra Trigger das Kopieren starten.
                Alles in einem Block wäre aber natürlich schöner.

                Das geht natürlich.
                Der Trigger kann ja auch im gleichen Script verarbeitet werden.
                Dann müsste man aber die 3 (oder später mal mehr) Backups seriell abfrühstücken oder mit relativem Aufwand den Abschluss aller 3 Schritte auswerten. Backup 3 kann ja durchaus früher fertig sein als 1 oder 2.

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

                Support us

                ioBroker
                Community Adapters
                Donate

                862
                Online

                32.0k
                Users

                80.4k
                Topics

                1.3m
                Posts

                2
                6
                218
                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