Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak zaplanować dynamiczną funkcję za pomocą zadania cron?

Zadania Cron wymagają ustawienia czasu, w którym są uruchamiane, nie mogą (tak, możesz to zhakować, mając skrypt, który edytuje crontab, ale nie powiedziałbym, że to bardzo dobry pomysł) mieć czas na dynamiczne uruchamianie. Oznacza to, że zasadniczo masz dwie opcje:

1) Ustaw cronjob, aby było uruchamiane co minutę i użyj pliku tymczasowego, którego dotykasz, aby powiedzieć, kiedy ostatnio uruchomiło jedno z zaplanowanych zadań Za każdym razem, gdy zostanie uruchomione, sprawdza, czy było zadanie do uruchomienia między ostatnim znacznikiem czasu plik tymczasowy i aktualny czas, a jeśli istnieje, uruchamia zadanie. To rażące, ale proste rozwiązanie.

2) Nie używaj crona. Utwórz demona, który sprawdza, w jakich godzinach zadania muszą być uruchomione i umieszcza je w kolejce priorytetowej, a następnie wyskakuje najwcześniejszy element i usypia, dopóki nie nadejdzie czas na uruchomienie tego zadania. Uruchamia zadanie i wstawia je ponownie, aby było uruchamiane 24 godziny w przyszłości, i powtarza się. To rozwiązanie jest zdecydowanie bardziej eleganckie, ale wymaga też więcej pracy.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. WARN SqlExceptionHelper:143 — Błąd SQL:0, SQLState:08S01 — SqlExceptionHelper:144 — Awaria łącza komunikacyjnego

  2. Wartości oddzielone przecinkami w klauzuli MySQL IN

  3. Jak wykonać zapytanie PHP przy wyborze opcji przy użyciu AJAX?

  4. Automatyczna aktualizacja widoku w MySql

  5. wiele zapytań w tej samej tabeli, ale w różnych kolumnach mysql