Changeset 43793 in spip-zone


Ignore:
Timestamp:
Jan 22, 2011, 7:26:13 PM (10 years ago)
Author:
kent1@…
Message:

Eviter un exec trop fréquent lorsqu'il est inutile

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/spipmotion/action/spipmotion_encoder.php

    r43506 r43793  
    5353         * On essaie de voir s'il y a d'autres processus ffmpeg en cours sur le serveur (autres sites?)
    5454         */
    55         $ps_ffmpeg = exec('ps -C ffmpeg',$retour,$retour_int);
    56         if(($retour_int == 1) && (count($retour) >= 3)){
    57                 $process = false;
    58         }else{
    59                 $process = true;
    60         }
    61         if(($nb_encodages>0) && $process && ($GLOBALS['meta']['spipmotion_casse'] != 'oui') && !intval($en_cours['id_spipmotion_attente'])){
    62                 $doc_attente = sql_fetsel("*","spip_spipmotion_attentes","encode='non'","","id_spipmotion_attente ASC","1");
    63                 $id_document = $doc_attente['id_document'];
    64                 $id_doc_attente = $doc_attente['id_spipmotion_attente'];
    65                 $format = $doc_attente['extension'];
    66                 $document = sql_fetsel('*','spip_documents','id_document='.sql_quote($id_document));
    67                 if($document['id_document']){
    68                         spip_log('on encode le doc '.$id_document,'spipmotion');
    69                         $encoder = charger_fonction('encodage','inc');
    70                         $encoder($document,$id_doc_attente,$format);
     55        if(($nb_encodages>0) && ($GLOBALS['meta']['spipmotion_casse'] != 'oui') && !intval($en_cours['id_spipmotion_attente'])){
     56                $ps_ffmpeg = exec('ps -C ffmpeg',$retour,$retour_int);
     57                if(($retour_int == 1) && (count($retour) >= 3)){
     58                        $process = false;
    7159                }else{
    72                         sql_delete('spip_spipmotion_attentes','id_document='.sql_quote($id_document));
    73                         genie_spipmotion_file($time);
     60                        $process = true;
     61                }
     62                if($process){
     63                        $doc_attente = sql_fetsel("*","spip_spipmotion_attentes","encode='non'","","id_spipmotion_attente ASC","1");
     64                        $id_document = $doc_attente['id_document'];
     65                        $id_doc_attente = $doc_attente['id_spipmotion_attente'];
     66                        $format = $doc_attente['extension'];
     67                        $document = sql_fetsel('*','spip_documents','id_document='.sql_quote($id_document));
     68                        if($document['id_document']){
     69                                spip_log('on encode le doc '.$id_document,'spipmotion');
     70                                $encoder = charger_fonction('encodage','inc');
     71                                $encoder($document,$id_doc_attente,$format);
     72                        }else{
     73                                sql_delete('spip_spipmotion_attentes','id_document='.sql_quote($id_document));
     74                                genie_spipmotion_file($time);
     75                        }
     76                }
     77                else{
     78                        spip_log("Trop de processus en cours de ffmpeg sur le serveur, on attend","spipmotion");
    7479                }
    7580        }else if(lire_config('spipmotion_casse') == 'oui'){
     
    8186                spip_log("L'id ". $en_cours['id_spipmotion_attente']." de la file d'attente est en cours d'encodage",'spipmotion');
    8287                spip_log("On attend sa fin avant d'en commencer un nouveau",'spipmotion');
    83         }else if(!$process){
    84                 spip_log("Trop de processus en cours de ffmpeg sur le serveur, on attend","spipmotion");
    8588        }
    8689       
Note: See TracChangeset for help on using the changeset viewer.