Je souhaite créer un script PHP qui s'exécute à des heures aléatoires dans la journée
Ce script va mettre à jour une BDD mais je souhaite que cela s'exécute à des horaires aléatoires dans une plage horaires (par exemple entre 9h et 17h)
Le script est prêt mais comment faire paramétrer le CRON pour que le script PHP s'éxécute à des heures aléatoires ?
Merci de votre aide
CRON : Script PHP à executer à des heures aléatoires dans une plage horaire
Related questions
- [RESOLU] Server unable to read htaccess file, denying access to be safe
73595
24.11.2019 19:11
- Version php 7.0 sur Ovh mais php 5.4.45 sur mon wordpress
68250
10.01.2019 11:14
- Effacer wordpress d'OVH et reinstaller
67582
08.09.2019 21:02
- Comment récupérer son mot de passe phpmyadmin ?
66917
14.11.2016 10:32
- Changer la version d'une base de donnée en mutualisé
64314
22.12.2016 11:46
- Résiliation hébergement
64244
27.07.2018 10:39
- Ne supporte pas FTP sur TLS
64201
11.12.2018 18:48
- Variable upload_max_filesize plus grande que post_max_size
56725
11.06.2017 16:01
- Résiliation hébergement+domaine
55837
11.09.2018 20:28
- Transfert hebergement et domaine .fr entre client OVH ?
54209
21.12.2016 15:10
Bonjour @PatrickU2
Une piste peut-être :
https://stackoverflow.com/questions/9049460/cron-jobs-and-random-times-within-given-hours
Exemple :
`30 8-21/* * * * sleep $[RANDOM\%90]m ; /path/to/script.php`
Je la connaissais pas celle là :)
Danger ici.
Si on ajoute un random entre 0 et 89 minutes, deux jobs consécutifs peuvent se télescoper, car le premier est toujours dans le sleep lorsque le suivant se déclenche.
J'aurais plutôt eu tendance à mettre %45 afin d'avoir une marge de sécurité, et par la même occasion éviter que le job s'exécute 2x à une minute d'intervalle dans le cas extrême, si le premier sleepe 59m et le second 0m.
On peut aussi "sleeper" un nombre de secondes aléatoires plutôt que des minutes, afin de "randomiser" plus.
Par exemple $[RANDOM\%2700]
Ou bien mettre un lock file pendant que le job s'exécute. Dans ce cas il faut bien étudier comment gérer la concurrence si les 2 jobs s'exécutent pile en même temps.
Bonjour,
sinon ici on s'en fou, car on est d'accord que le manager OVH ne vous laisse pas faire n'importe quoi dans la création d'une tâche cron ?
Cordialement, janus57
euh ? j'ai pas compris, on met où ce script ?
Le n'en sais strictement rien.
Je vous ai donné une piste _(trouvée sur Internet)_. A vous de l'approfondir.
Sinon, j'y pense. On effectue une tache CRON toutes les heures
dans le script PHP du fichier à exécuter, on fait un random entre 0 et 1, et si la valeur est > 0,5, on effectue la tache ?
Faut que je trouve comment faire un Random en PHP et faire le IF > 0,5
Merci