Changeset 75290 in spip-zone


Ignore:
Timestamp:
Sep 5, 2013, 4:26:38 PM (6 years ago)
Author:
cedric@…
Message:

Respect de la cadence :

  • si on veut un envoi toutes les 77s et que l'on programme un cron tous les 77s il est en fait executé en moyenne toutes les 77s+delta ce qui ralentit l'envoi
    • on programme toutes les periode-15s en comptant environ 15s de delta moyen
    • a chaque occurence on corrige le nombre envoye par le ratio de la periode visee/periode effective


Par contre relancer en fin de hit une tache pour finir l'envoi si on a pas tout envoye dans le hit (smtp lent) provoque des envois concurrents et en l'etat des doubles envois au meme destinataire. On desactive donc cette feature (mais on garde le log) en attendant de le faire bien.

Location:
_plugins_/mailshot/trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/mailshot/trunk/genie/mailshot_bulksend.php

    r75286 r75290  
    1515                include_spip('inc/mailshot');
    1616                list($periode,$nb) = mailshot_cadence();
     17
     18                // corriger par le nombre que l'on envoi
     19                // par le ratio de delta de time effectif depuis le dernier cron
     20                // sur la periode visee
     21                $f = _DIR_TMP."bulksend_last.txt";
     22                $now = time();
     23                lire_fichier($f,$last);
     24                if ($last=intval($last)
     25                  AND ($dt = $now-$last)>0){
     26                        $c = min(2,$dt/$periode);
     27                        $nb = intval(round($nb*$c,0));
     28                        spip_log("Correction sur nb : $c ($dt au lieu de $periode) => $nb","mailshot");
     29                }
     30                ecrire_fichier($f,$now);
     31
    1732                $boost = (lire_config("mailshot/boost_send")=='oui'?true:false);
    1833                mailshot_envoyer_un_lot_par_morceaux($nb,!$boost);
  • _plugins_/mailshot/trunk/inc/mailshot.php

    r75287 r75290  
    4040        }
    4141
     42        spip_log("cadence:".implode(",",$cadence),"mailshot");
    4243        return $cadence;
    4344}
     
    8384        if ($nb<$nb_max AND $exact){
    8485                spip_log("envoi lot par morceau : $nb/$nb_max on relance","mailshot"._LOG_INFO_IMPORTANTE);
    85                 job_queue_add("mailshot_envoyer_un_lot_par_morceaux","Newsletter",array($nb_max-$nb),"inc/mailshot");
     86                #job_queue_add("mailshot_envoyer_un_lot_par_morceaux","Newsletter",array($nb_max-$nb),"inc/mailshot");
    8687        }
    8788        return $nb;
  • _plugins_/mailshot/trunk/mailshot_pipelines.php

    r68524 r75290  
    2020                include_spip('inc/mailshot');
    2121                list($periode,$nb) = mailshot_cadence();
    22                 $taches_generales['mailshot_bulksend'] = $periode;
     22                $taches_generales['mailshot_bulksend'] = max(60,$periode-15);
    2323        }
    2424
  • _plugins_/mailshot/trunk/paquet.xml

    r75286 r75290  
    22        prefix="mailshot"
    33        categorie="communication"
    4         version="1.5.5"
     4        version="1.5.6"
    55        etat="stable"
    66        compatibilite="[3.0.5;3.0.*]"
Note: See TracChangeset for help on using the changeset viewer.