Heim  >  Artikel  >  Backend-Entwicklung  >  Laravel5.2, sollte ich für geplante Aufgaben die Crontab des Dienstes oder die Warteschlange verwenden?

Laravel5.2, sollte ich für geplante Aufgaben die Crontab des Dienstes oder die Warteschlange verwenden?

WBOY
WBOYOriginal
2016-12-01 00:25:281643Durchsuche

Fügen Sie beispielsweise eine Reihe von Aktivitäten mit einer Startzeit hinzu und versetzen Sie sie dann automatisch in den Startstatus, wenn die Startzeit erreicht ist, und in den Endstatus, wenn sie endet.
Sollten wir außerdem die Datenbank abfragen oder in Redis einfügen?

Antwortinhalt:

Fügen Sie beispielsweise eine Reihe von Aktivitäten mit einer Startzeit hinzu und versetzen Sie sie dann automatisch in den Startstatus, wenn sie die Startzeit erreicht, und in den Endstatus, wenn sie endet.
Sollten wir außerdem die Datenbank abfragen oder in Redis einfügen?

Genau genommen dient die Warteschlange nur zum Senden von Nachrichten, nicht für Aufgaben (obwohl dies auch durch Delayqueue erreicht werden kann), aber am besten ist die Verwendung von Crontab

Die Start- und Endzeit der Aktivität kann direkt im Code bestimmt werden. Wenn Ihr Geschäftsszenario anders ist, ist es am besten, einen Hintergrund zu haben, um die Start- und Endzeit dieser Aktivitätsreihe zu steuern Es wird jedoch empfohlen, Crontab zu verwenden, da dies einfach und direkt ist

Was das Abfragen von Daten betrifft, ist mein persönlicher Vorschlag, die Datenbank zu speichern, Redis abzufragen und gleichzeitig zu aktualisieren

  1. Das Abfragen der Datenbank ist langsam und die Parallelität ist gering

  2. Wenn viele Online-Aktivitäten gleichzeitig stattfinden und eine bestimmte Anzahl von Parallelitäten besteht, sollte eine Cache-Vorbereitung durchgeführt werden, um zu verhindern, dass die Datenbank hängen bleibt.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn