IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

[Linux][Php]Cron Apache, gros traitements Php et stabilité


Sujet :

Apache

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 70
    Points : 73
    Points
    73
    Par défaut [Linux][Php]Cron Apache, gros traitements Php et stabilité
    Bonjour,

    Je connais pas mal Php, je maîtrise les fonctions de base d'Apache, mais je débute complètement avec Linux.

    Sur une architecture LAMP, je vais avoir besoin d'effectuer chaque nuit de gros traitements de maintenance sur mon serveur web.
    De gros traitements, c'est : importer de gros fichiers textes de plusieurs dizaines de milliers d'enregistrements, les scanner, en contrôler les données, récupérer des fichiers images vers lesquels il pointent (plusieurs centaines à plusieurs milliers), recadrer ces images à différents formats puis les recopier ; pour enfin insérer tout ça proprement dans une base de données.

    Tout ça, j'ai l'habitude de le faire en PHP (travail sur fichiers textes, librairie GD ou autre) et de programmer des crons qui me lancent tout ça au milieu de la nuit.
    Mais que je commence à me poser des questions sur la viabilité et la fiabilité de ce système sur des traitements aussi lourds.

    • Je sais bien que l'on peux augmenter le timeout de scripts Php pour empêcher qu'ils tombent en rade. Mais malgré la stabilité de Php5 est-ce que c'est le bien langage le plus adapté pour ce genre de tâche ?
    • Dans quelle mesure les procédures stockées de Mysql5 apportent-elles un bénéfice de performance, pour ces gros traitement SQL ?
    • Les crons, on peut les lancer à des heures précises. Mais est-ce qu'on pourrait pas mieux organiser une liste séquentielle de tâches à effectuer ? Ce serait plus rassurant que de fixer arbitrairement des heures éloignées en priant pour que deux scripts ne fiissent pas par se marcher sur les pieds.



    En dehors de Php + cron, sous une architecture LAMP, comment faire tout ça ?

    J'ai commencé à me renseigner sur le shell en Linux, mais j'y connais rien. pour qui vient du Php, c'est effrayant d'auntant que les rédacteurs entrent tellement vite dans les détails techniques que j'ai même du mal à identifier si ça peut être une solution pour moi.
    N'hésitez à m'expliquer ça comme à un gamin de six ans, avec une histoire de grenouilles et faisant des grosses voix d'animaux, c'est comme ça que je comprends le mieux >_<.

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 305
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 305
    Points : 15 633
    Points
    15 633
    Par défaut Re: [Linux][Php]Cron Apache, gros traitements Php et stabili
    Citation Envoyé par El Riiico
    N'hésitez à m'expliquer ça comme à un gamin de six ans, avec une histoire de grenouilles et faisant des grosses voix d'animaux, c'est comme ça que je comprends le mieux >_<.
    bonjour, je suis Fanfan l'autruche

    au sujet de la stabilité de PHP, j'ai oublié une fois de couper un script PHP que j'ai lancé pour enregistrer la radio et il a continué à enregistrer pendant toute la durée par défaut c'est à dire 1 journée
    par contre n'oublie pas de prévoir qu'il peut y avoir un problème d'accès à internet ou une coupure de courant et que donc pendant une nuit tu ne peux pas faire ton traitement. En parlant de ça, ça n'as pas l'air d'être un problème fréquent mais au boulot chez moi, il y a 2 nuit par mois où les sauvegardes automatiques n'ont pas fonctionnées pour une raison ou une autre

    pour les tâches séquencielles, il suffit de les lancer séquenciellement dans un même script

    et pour faire les script, tu peux faire du tout PHP sans problème. Soit tu fais un fichier php "normal" (qui commence par "<?php") et tu le lance avec la commande "php nomFichier.php". Soit si tu tient à lancer ton fichier comme un script "normal" tu peux mettre les droits "x" au fichier et tu commence ton fichier par le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    #!/usr/bin/php
     
    <?php
     
    .....

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 70
    Points : 73
    Points
    73
    Par défaut
    Ok, merci Mam'zelle Fanfan, je vais regarder un peu ça.

    Je sens surtout que je vais être bon pour effectuer une batterie de tests...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. PHP, crons, gros volumes de données
    Par mookmook dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 5
    Dernier message: 05/05/2014, 09h10
  2. cron php par apache sous CentOS
    Par Chello dans le forum Administration système
    Réponses: 1
    Dernier message: 15/11/2011, 16h11
  3. [php-mysql] Requete gros traitements
    Par antrax2013 dans le forum Requêtes
    Réponses: 4
    Dernier message: 24/08/2006, 12h32
  4. [Compilation Installation] Php avec apache sous linux
    Par c.tranquille dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 19/06/2006, 13h46
  5. Réponses: 5
    Dernier message: 14/06/2006, 16h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo