Accueil du site > code > ecrire > inc > genie.php

genie.php

Dernier ajout : 15 août 2007.


  • inc_genie_dist

    fonction

    $taches = array()

    15 août 2007, par batch

    Gestion des taches de fond


    Deux difficultes :
    - la plupart des hebergeurs ne fournissent pas le Cron d’Unix
    - les scripts usuels standard sont limites a 30 secondes Solution : Toute connexion a SPIP s’acheve par un appel a la fonction cron() qui appelle la fonction surchargeable genie dans inc/ Sa definition standard ci-dessous prend dans une liste de taches la plus prioritaire, leurs dates etant donnees par leur fichier-verrou. Une fonction executant une tache doit retourner un nombre :
    - nul, si la tache n’a pas a etre effecutee
    - positif, si la tache a ete effectuee
    - negatif, si la tache doit etre poursuivie ou recommencee Elle recoit en argument la date de la derniere execution de la tache. On peut appeler cette fonction avec d’autres taches (pour etendre Spip) specifiee par des fonctions respectant le protocole ci-dessus On peut modifier la frequence de chaque tache et leur ordre d’analyse en modifiant les variables ci-dessous.


    Les taches sont dans un tableau (’nom de la tache’ => periodicite) Cette fonction execute la tache la plus urgente (celle dont la date de derniere execution + la periodicite est minimale) La date de la derniere intervention est donnee par un fichier homonyme, de suffixe ".lock", modifie a chaque intervention et des le debut de celle-ci afin qu’un processus concurrent ne la demarre pas aussi. Les taches les plus longues sont tronconnees, ce qui impose d’antidater le fichier de verrouillage (avec la valeur absolue du code de retour). La fonction executant la tache est un homonyme de prefixe "genie_". Le fichier homonyme du repertoire "genie/" est automatiquement lu et il est suppose definir cette fonction.


  • genie_invalideur_dist

    fonction

    $t

    15 août 2007, par batch

    Pas de fichier a part pour une fonction aussi petite :
    - elle peut retirer les fichiers perimes
    - elle fait appliquer le quota En cas de quota sur le CACHE/, nettoyer les fichiers les plus vieux



Derniers commentaires