Matthias Apsel: Seite zu einem bestimmten Zeitpunkt neu laden

Hallo alle,

es gibt ja die Möglichkeit eine Seite nach einer bestimmten Anzeigedauer zu refreshen.

Wie kann ich zu jeder vollen Stunde einen Refresh auslösen?

Bis demnächst
Matthias

--
Rosen sind rot.
  1. hi,

    Wie kann ich zu jeder vollen Stunde einen Refresh auslösen?

    Den Browser dazu bringen, daß er erkennt wann eine Stunde voll ist. Z.B. wenn .getSeconds gleich 0 ergibt.

    MfG

    --
    Osterhasen sind braun (nach dem Auswickeln).
    1. Hallo pl,

      Den Browser dazu bringen, daß er erkennt wann eine Stunde voll ist. Z.B. wenn .getSeconds gleich 0 ergibt.

      Und dann per JS den refresh auslösen? - Scheint zielführend. Danke.

      Bis demnächst
      Matthias

      --
      Rosen sind rot.
      1. @@Matthias Apsel

        Und dann per JS den refresh auslösen?

        Was den vermeintlichen Vorteil hat: Wenn jeder Klient – sagen wir: alle 10 Sekunden – auf seiner eigenen Sanduhr nachschaut, ob gerade der volle Kuckuck* abgelaufen ist, dann refreshen nicht alle Klienten gleichzeitig, sondern über einen Zeitraum von 10 Sekunden verteilt (bei genau gehenden Uhren; durch ungenau gehende Uhren ist der Zeitraum sogar noch größer).

        LLAP 🖖

        *Asterisk siehe anderes Posting

        --
        „Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“ —Kurt Weidemann
    2. Hallo,

      Wie kann ich zu jeder vollen Stunde einen Refresh auslösen?

      Den Browser dazu bringen, daß er erkennt wann eine Stunde voll ist. Z.B. wenn .getSeconds gleich 0 ergibt.

      Was ca. 60mal pro Stunde vorkommt. Das ist so nicht zielführend…

      Gruß
      Kalk

      1. Hallo Tabellenkalk,

        Was ca. 60mal pro Stunde vorkommt. Das ist so nicht zielführend…

        Naja, diesen gedanklichen Sprung schaff ich grade noch so 😉. Jeder hat das Recht auf Tipfelher. 😉

        Bis demnächst
        Matthias

        --
        Rosen sind rot.
      2. Hallo,

        Wie kann ich zu jeder vollen Stunde einen Refresh auslösen?

        Den Browser dazu bringen, daß er erkennt wann eine Stunde voll ist. Z.B. wenn .getSeconds gleich 0 ergibt.

        Was ca. 60mal pro Stunde vorkommt. Das ist so nicht zielführend…

        Dann nehm'mer halt den Minutenzeiger.

        MfG

        1. Hallo,

          Dann nehm'mer halt den Minutenzeiger.

          Cool! Wenn's jetz noch nen Stundenzeiger gäbe, könnte man damit glatt ne Uhr programmieren…

          Gruß
          Kalk

          1. Hallo,

            Dann nehm'mer halt den Minutenzeiger.

            Cool! Wenn's jetz noch nen Stundenzeiger gäbe, könnte man damit glatt ne Uhr programmieren…

            Aber das Problem hast' nicht verstanden oder? Meine Güte!

            1. Hallo,

              Aber das Problem hast' nicht verstanden oder? Meine Güte!

              Kannst du das Problem in einer Frage formulieren?

              Gruß
              Kalk

      3. Hallo,

        Wie kann ich zu jeder vollen Stunde einen Refresh auslösen?

        Den Browser dazu bringen, daß er erkennt wann eine Stunde voll ist. Z.B. wenn .getSeconds gleich 0 ergibt.

        Was ca. 60mal pro Stunde vorkommt.

        Was übrigens falsch ist. Es kommt nämlich genau 3600 mal vor pro Stunde 😉

        1. Hallo,

          Wie kann ich zu jeder vollen Stunde einen Refresh auslösen?

          Den Browser dazu bringen, daß er erkennt wann eine Stunde voll ist. Z.B. wenn .getSeconds gleich 0 ergibt.

          Was ca. 60mal pro Stunde vorkommt.

          Was übrigens falsch ist. Es kommt nämlich genau 3600 mal vor pro Stunde 😉

          wirklich?

          Gruß
          Jürgen

          1. Hallo,

            Wie kann ich zu jeder vollen Stunde einen Refresh auslösen?

            Den Browser dazu bringen, daß er erkennt wann eine Stunde voll ist. Z.B. wenn .getSeconds gleich 0 ergibt.

            Was ca. 60mal pro Stunde vorkommt.

            Was übrigens falsch ist. Es kommt nämlich genau 3600 mal vor pro Stunde 😉

            wirklich?

            Das lässt sich doch bestimmt nachprüfen oder!?

            1. Hallo,

              Wie kann ich zu jeder vollen Stunde einen Refresh auslösen?

              Den Browser dazu bringen, daß er erkennt wann eine Stunde voll ist. Z.B. wenn .getSeconds gleich 0 ergibt.

              Was ca. 60mal pro Stunde vorkommt.

              Was übrigens falsch ist. Es kommt nämlich genau 3600 mal vor pro Stunde 😉

              wirklich?

              Das lässt sich doch bestimmt nachprüfen oder!?

              dann mach es. Das falsch kam von dir.

              Gruß
              Jürgen

        2. Hallo,

          Was ca. 60mal pro Stunde vorkommt.

          Was übrigens falsch ist. Es kommt nämlich genau 3600 mal vor pro Stunde 😉

          Hast denn dann einen Extra-Zähler, der 60 mal bis Null zählt um daraufhin eine Minute vollzumachen?

          Gruß
          Kalk

        3. Hallo,

          Was übrigens falsch ist. Es kommt nämlich genau 3600 mal vor pro Stunde 😉

          Es würde mich überraschen, hier eine genau reproduzierbare Anzahl zu finden. Es ist vom verwendeten Algorithmus und der Hardwarekonfiguration abhängig. Je häufiger man .getSeconds abfragt, desto höher wird der Wert…

          Gruß
          Kalk

  2. Hallo Matthias,

    Wie kann ich zu jeder vollen Stunde einen Refresh auslösen?

    Entweder via Meta-Refresh:

    <meta http-equiv="refresh" content="3600; URL=...">
    

    Oder via JS und setTimeout:

    window.setTimeout(() => document.location.reload(), 3600000);
    

    LG,
    CK

    1. Hallo Christian Kruse,

      Wie kann ich zu jeder vollen Stunde einen Refresh auslösen?

      Entweder via Meta-Refresh:

      <meta http-equiv="refresh" content="3600; URL=...">
      

      Oder via JS und setTimeout:

      window.setTimeout(() => document.location.reload(), 3600000);
      

      Das wäre ja nach jeder Stunde, nicht zu jeder vollen Stunde.

      Bis demnächst
      Matthias

      --
      Rosen sind rot.
      1. Hallo Matthias,

        Das wäre ja nach jeder Stunde, nicht zu jeder vollen Stunde.

        Ah, das hatte ich in der Tat falsch verstanden, sorry.

        LG,
        CK

      2. Hallo Matthias,

        Das wäre ja nach jeder Stunde, nicht zu jeder vollen Stunde.

        hmm, ich grübel immer noch darüber (Neugier halt) für welche Anwendungen, so explizit, so was nützlich sein kann, könnte ja inspirierend sein.

        Gruss
        Henry

        1. Hallo Henry,

          Das wäre ja nach jeder Stunde, nicht zu jeder vollen Stunde.

          hmm, ich grübel immer noch darüber (Neugier halt) für welche Anwendungen, so explizit, so was nützlich sein kann, könnte ja inspirierend sein.

          Ich möchte mir das Rechnen mit Datümern sparen. Der Anwendungsfall ist reine Spielerei. Wahrscheinlich wird es nie vorkommen, dass die Seite refresht wird. Höchstens 10 Besucher täglich. Es soll die Startseite für eine Seite werden, dessen Inhalte ich vom Netz nehmen möchte. Die Domän aber nicht.

          http://selfhtml.apsel-mv.de/zeit.php

          Bis demnächst
          Matthias

          --
          Rosen sind rot.
          1. Hallo Matthias,

            Danke für die Info. Ich vermute mal, du willst das nur clientseitig abhandeln, weil sonst gäb's ja andere Möglichkeiten. Daher ist das hier vielleicht interessant für dich. Uraltes Script, aber funktioniert immer noch.

            Gruss
            Henry

            1. Hallo Henry,

              Danke für die Info. Ich vermute mal, du willst das nur clientseitig abhandeln, weil sonst gäb's ja andere Möglichkeiten.

              Ich initiiere die Zeiten mit PHP, weil ich vermute, dass dessen Datumsfunktionen genau wissen, wann (zu welcher Stunde) z.B. eine Sommerzeitumstellung stattfindet. Danach lass ich JS einfach weiterzählen.

              Bis demnächst
              Matthias

              --
              Rosen sind rot.
    2. Hallo,

      Wie kann ich zu jeder vollen Stunde einen Refresh auslösen?

      Entweder via Meta-Refresh:

      <meta http-equiv="refresh" content="3600; URL=...">
      

      Ich habe das vor Jahren mal so gemacht, als ich meinen Rechner im Büro per Fernbedienungslösung (ich weiß den Namen grad nicht mehr) steuern wollte und ein Script mir die IP in eine Textdatei schreiben mußte.

      Das hat auf Dauer gesehen sehr unzuverlässig funktioniert, daher kann ich diese Lösung nicht wirklich empfehlen. Ich habs dann damals über VB realisiert, die IP in die Datei zu schreiben.

      Pit

  3. Hallo Matthias,

    wäre meta refresh eine Option?

    Gruß
    Jürgen

    1. Hallo JürgenB,

      wäre meta refresh eine Option?

      Nein, denn ich möchte ja nicht nach einer Stunde neu laden, sondern zu jeder vollen Stunde.

      Bis demnächst
      Matthias

      --
      Rosen sind rot.
      1. Hi,

        wäre meta refresh eine Option?

        Nein, denn ich möchte ja nicht nach einer Stunde neu laden, sondern zu jeder vollen Stunde.

        Dann mußt Du doch zum Ladezeitpunkt nur die Zeit bis zur nächsten vollen Stunde ermitteln, und diese im meta-refresh angeben.

        cu,
        Andreas a/k/a MudGuard

        1. Hallo MudGuard,

          Dann mußt Du doch zum Ladezeitpunkt nur die Zeit bis zur nächsten vollen Stunde ermitteln, und diese im meta-refresh angeben.

          Das wäre auch denkbar.

          Bis demnächst
          Matthias

          --
          Rosen sind rot.
  4. Das kann schon bei einer vergleichbar niedrigen Zahl von Benutzern zu Problemen führen. 1000 Abrufe pro Stunde sind was ganz anderes als 1000 Abrufe zu jeder vollen Stunde von denen (dank des Netzwerk-Time-Protokolls) 500 wirklich zeitgleich erfolgen (oder tatsächlich parallel bearbeitet werden müssen).

    Je nach Antwortzeit, Konfiguration, Hardware und auch solchen Kleinigkeiten wie durch den Request ausgelöste Datenbankabfragen (speziell inserts) kann ein solches Vorhaben zu spaßfreien Reaktionen des Servers führen. Womöglich wird sogar eine DDoS-Warnung beim Hoster ausgelöst, was zu einer Sperrung von IP-Adressen im Router führen kann.

    Eine Lösung könnte es sein, die Zugriffe wenigstens auf die Sekunden der ersten oder der ersten beiden Minuten nach der vollen Stunde zu verteilen. Da es ja um "hohe" Anzahlen geht sollte eine zufällige Wahl der Sekunde (und Minute) reichen. Dazu hardcore-caching betreiben - also dafür sorgen, dass die Inhalte statisch (e.g. html-Datei) und vorgepackt bereit liegen.

    1. Hallo Regina Schaukrug,

      Das kann schon bei einer vergleichbar niedrigen Zahl von Benutzern zu Problemen führen.

      Stimmt. Die Seite, die es betreffen soll, hat höchstens 10 Besucher pro Tag. Das wird sich auch nicht großartig ändern, eher weniger werden.

      Bis demnächst
      Matthias

      --
      Rosen sind rot.
      1. Stimmt. Die Seite, die es betreffen soll, hat höchstens 10 Besucher pro Tag.

        Ja. Aber wenn man die Lösung "mit ohne" Warnung präsentiert, dann denken auch andere: "Das mach (will) ich jetzt mal genau so."

        1. Hallo Regina Schaukrug,

          Ja. Aber wenn man die Lösung "mit ohne" Warnung präsentiert, dann denken auch andere: "Das mach (will) ich jetzt mal genau so."

          Deshalb gabs von mir ja auch ein +1.

          Bis demnächst
          Matthias

          --
          Rosen sind rot.
          1. Deshalb gabs von mir ja auch ein +1.

            Das hatte ich mir sogar gedacht. Danke.

  5. @@Matthias Apsel

    Wie kann ich zu jeder vollen Stunde einen Refresh auslösen?

    Da muss wohl der Hotelier zu jeder vollen Stunde durch den Server laufen und „Kuckuck“ rufen.*

    LLAP 🖖

    *Asterisk bei Helvetica. Oder so ähnlich.

    --
    „Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“ —Kurt Weidemann
    1. Hallo Gunnar Bittersmann,

      Da muss wohl der Hotelier zu jeder vollen Stunde durch den Server laufen und „Kuckuck“ rufen.*

      durch die Klienten. 😝

      *Asterisk bei Helvetica. Oder so ähnlich.

      Bis demnächst
      Matthias

      --
      Rosen sind rot.