Script jede Sekune ausführen? Möglich?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Script jede Sekune ausführen? Möglich?

    Hallo zusammen,

    habe eine Frage.
    Bin dabei ein portal zu erstellen. Dort kann man auch Auktionen einstellen und dinge ersteigern. Soweit so gut. Nun such ich an einer Möglichkeit eine Auktion sekundengenau zu beenden.
    In der DB speicher ich den Start- und Endzeitpunkt. Wenn ich ein Script jede Sekunden prüfen lassen würde ob eine Auktion nun beendet ist könnte ich die Auktion genau beenden lassen.

    Aber, ich denke das würde den Server arg belasten und außerdem darf ich Cronjobs nicht in Sekundenintervalle ausführen. Minimum ist alle 30 Minuten.

    Hat jemand eine Idee wie ich das machen könnte? Es müsste in jeden Moment geprüft werden ob eine Auktion zu ende ist. Hab auch schon danach gesucht, aber bei allen die ein Script zeitgesteuert aufrufen wollen ist ein Cronjob die Lösung. Bei mir leider nicht

    Glaube ja schon bald dass es mit PHP so einfach nicht möglich ist

    Über Hilfe würde ich mich freuen

    MfG

  • #2
    Warum sekundengenau?

    Machs dir doch bei jedem Request...
    Weil:
    Wenn keiner zuhört, brauchste auch nicht zu hupen!
    Wir werden alle sterben

    Kommentar


    • #3
      Du brauchst doch nicht mal "beenden".
      Das ist doch nur ein Wert, der abhängig von zwei Daten ist.

      SELECT (NOW() > Datum_Ende) as Auktion_beendet FROM Auktionen...

      Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

      bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
      Wie man Fragen richtig stellt

      Kommentar


      • #4
        Wenn ein Baum umfällt und keiner ist da, der es hört, hat der Baum dann ein Geräusch gemacht?

        Oder mit anderen Worten: Warum sekundengenau aktualisieren, wenn keine Besucher im Sekundentakt die Auktion betrachten?

        Kommentar


        • #5
          Hi,

          danke für die Antworten.

          Meine Idee war, dass halt nach dem ablaufen eine E-Mail an Verkäufer/Käufer geht.

          Hatte auch schon ne Idee bei jedem Seitenaufruf das abzufragen, so dass halt noch eine Abfrage nebenher läuft. Aber es könnte ja mal der Fall sein (z. B. Nachts), dass niemand auf der Seite ist und damit auch nichts abgefragt wird. DAchte vielleicht gibt es da ne Möglichkeit.

          Dann wäre wohl das beste alle 30 Minuten abzufragen und bei jedem Seitenaufruf...

          Danke

          MfG

          Kommentar


          • #6
            Hast du keinen cronjob für dein php parat ?

            Kommentar


            • #7
              Ja doch Cronjob hab ich, aber der kann maximal alle 30 Minuten ausgeführt werden, nicht ständig.

              Wenn ich den alle 30 Minuten laufen lasse hätte ich ja nur ein paar Minuten, maximal 30, wenn keiner auf der Seite ist bis das script läuft.

              Kommentar


              • #8
                Wenn 30 Minuten kein einziger Request auf deiner Seite eingeht, kann das Interesse ja nicht allzu groß sein. Dann wird auch der Käufer/Verkäufer die Mail nicht sofort vermissen. Falls doch, wird er auf die Auktionsseite gehen und damit den Mailversand auslösen.

                Übrigens gibt es für 5 Euro im Monat ordentlichen Webspace, mit ordentlich Cron.

                Kommentar


                • #9
                  Moin,

                  das meinte ich ja nur im schlimmsten Fall. Ob da nachher Leute drauf gehen ist mir relativ egal, ich erstell das nur.

                  Die Seite wird auf nem Managed Server für 109€ im Monat gehostet. Ist kein billig scheiß. Bei dem Paket kann ich 1000 Cronjobs einrichten, aber halt nicht in kleineren Abständen als 30 Minuten.

                  Kommentar


                  • #10
                    Original geschrieben von carlos1985
                    Meine Idee war, dass halt nach dem ablaufen eine E-Mail an Verkäufer/Käufer geht.
                    Und das muss sekundengenau sein? Schon allein der Mailversand kann einige Minuten oder manchmal sogar länger dauern.

                    Kommentar


                    • #11
                      Original geschrieben von carlos1985
                      Die Seite wird auf nem Managed Server für 109€ im Monat gehostet. Ist kein billig scheiß.
                      Richtig, das ist teurer scheiß.
                      Bei dem Paket kann ich 1000 Cronjobs einrichten, aber halt nicht in kleineren Abständen als 30 Minuten.
                      Dann opfere doch 60 von den 1000 Cronjobs für diese Mailgeschichte, alle mit einer Frequenz von 60 Minuten.

                      Kommentar


                      • #12
                        Original geschrieben von onemorenerd
                        Dann wird auch der Käufer/Verkäufer die Mail nicht sofort vermissen.
                        Zumal man den Zustellungszeitpunkt nicht im entferntesten beeinflussen kann.
                        [FONT="Helvetica"]twitter.com/unset[/FONT]

                        Shitstorm Podcast – Wöchentliches Auskotzen

                        Kommentar

                        Lädt...
                        X