sql >> Database teknologi >  >> RDS >> Mysql

Hvordan planlægger man dynamisk funktion med cron job?

Cron-opgaver kræver, at du forudindstiller de tidspunkter, hvorpå de kører, de kan ikke (ja du kunne hacke dette ved at have et script, som redigerer din crontab, men jeg vil ikke sige, at det er en særlig god idé) få deres tid til at køre bestemt dynamisk. Det betyder, at du grundlæggende har to muligheder:

1) Indstil en cronjob til at køre hvert minut og brug en midlertidig fil, som du trykker på for at fortælle sidste gang, den kørte en af ​​de planlagte opgaver. Hver gang den kører, tjekker den, om der var en opgave at køre i mellem det sidste tidsstempel af din midlertidige fil og det aktuelle tidspunkt, og hvis der er det, kører den opgaven. Dette er en grov, men simpel løsning.

2) Brug ikke cron. Opret en dæmon, der kontrollerer, hvornår opgaver skal køres, og sætter dem i en prioriteret kø, hvorefter den popper det tidligste element og sover, indtil det er tid til at køre denne opgave. Den kører opgaven og genindsætter den for at blive kørt 24 timer i fremtiden og gentages. Denne løsning er langt mere elegant, men den kræver også mere arbejde.



  1. Skal jeg virkelig bruge SET XACT_ABORT ON?

  2. Kald til udefineret funktion oci_connect, php_oci8_12c.dll, windows 8.1, php5.6.6

  3. Hvordan bruger man LOAD_FILE til at indlæse en fil i en MySQL-blob?

  4. Mysql indsæt tilfældig datotid i et givet dato- og tidsinterval