2017-07-10 4 views
0

J'ai utilisé PHPlist et j'essayais de faire fonctionner le traitement parallèle, mais il semble que même si je traite le traitement par lots et la régulation mailqueue ainsi que le traitement parallèle, une seule campagne semble fonctionner. Heres le fichier config.php avec la section de traitement du courrier ci-dessous. Veuillez noter que j'ai utilisé le fichier config_extend pour le personnaliser davantage. J'ai aussi un travail cron qui s'exécute toutes les 5 minutes pour vérifier et traiter la file d'attente.PHPList traitement parallèle

========================================================================= 

Queue and Load management 

========================================================================= 

*/ 

// If you set up your system to send the message automatically (from commandline), 
// you can set this value to 0, so "Process Queue" will disappear from the site 
// this will also stop users from loading the page on the web frontend, so you will 
// have to make sure that you run the queue from the commandline 
// check README.commandline how to do this 
define('MANUALLY_PROCESS_QUEUE', 1); 

// This setting will activate an initial setup choice for processing the queue 
// When "true" it will allow a choice between remote queue processing with the 
// phpList.com service or processing it locally in the browser. 
// when the value is "false", you can use remote processing in your own way 
// as explain at https://resources.phplist.com/system/remote_processing 
define('SHOW_PQCHOICE',false); 

// batch processing 
// if you are on a shared host, it will probably be appreciated if you don't send 
// out loads of emails in one go. To do this, you can configure batch processing. 
// Please note, the following two values can be overridden by your ISP by using 
// a server wide configuration. So if you notice these values to be different 
// in reality, that may be the case 

// max messages to process 
// if there are multiple messages in the queue, set a maximum to work on 
define('MAX_PROCESS_MESSAGE', 999); 

// process parallel 
// if there are multiple messages in the queue, divide the max batch across them 
// instead of sending them one by one. 
// this only works if you use batch processing. It will divide the batch between the 
// campaigns that need sending. 
define('PROCESSCAMPAIGNS_PARALLEL',true); 

// define the amount of emails you want to send per period. If 0, batch processing 
// is disabled and messages are sent out as fast as possible 
define('MAILQUEUE_BATCH_SIZE', 360); 

// define the length of one batch processing period, in seconds (3600 is an hour) 
define('MAILQUEUE_BATCH_PERIOD', 3600); 

// to avoid overloading the server that sends your email, you can add a little delay 
// between messages that will spread the load of sending 
// you will need to find a good value for your own server 
// value is in seconds, and you can use fractions, eg "0.5" is half a second 
// (or you can play with the autothrottle below) 
define('MAILQUEUE_THROTTLE', 10); 

// Mailqueue autothrottle. This will try to automatically change the delay 
// between messages to make sure that the MAILQUEUE_BATCH_SIZE (above) is spread evently over 
// MAILQUEUE_BATCH_PERIOD, instead of firing the Batch in the first few minutes of the period 
// and then waiting for the next period. This only works with mailqueue_throttle off 
// and MAILQUEUE_BATCH_PERIOD being a positive value 
// it still needs tweaking, so send your feedback to mantis.phplist.com if you find 
// any issues with it 
define('MAILQUEUE_AUTOTHROTTLE', 0); 

// Domain Throttling 
// You can activate domain throttling, by setting USE_DOMAIN_THROTTLE to 1 
// define the maximum amount of emails you want to allow sending to any domain and the number 
// of seconds for that amount. This will make sure you don't send too many emails to one domain 
// which may cause blacklisting. Particularly the big ones are tricky about this. 
// it may cause a dramatic increase in the amount of time to send a message, depending on how 
// many users you have that have the same domain (eg hotmail.com) 
// if too many failures for throttling occur, the send process will automatically add an extra 
// delay to try to improve that. The example sends 1 message every 2 minutes. 

define('USE_DOMAIN_THROTTLE', 0); 
define('DOMAIN_BATCH_SIZE', 1); 
define('DOMAIN_BATCH_PERIOD', 120); 

// if you have very large numbers of users on the same domains, this may result in the need 
// to run processqueue many times, when you use domain throttling. You can also tell phplist 
// to simply delay a bit between messages to increase the number of messages sent per queue run 
// if you want to use that set this to 1, otherwise simply run the queue many times. A cron 
// process every 10 or 15 minutes is recommended. 
define('DOMAIN_AUTO_THROTTLE', 0); 

// MAX_PROCESSQUEUE_TIME 
// to limit the time, regardless of batch processing or other throttling of a single run of "processqueue" 
// you can set the MAX_PROCESSQUEUE_TIME in seconds 
// if a single queue run exceeds this amount, it will stop, just to pick up from where it left off next time 
// this allows multiple installations each to run the queue, but slow installations (eg with large emails) 
// set to 0 to disable this feature. 
define('MAX_PROCESSQUEUE_TIME', 0); 

/* 

Mon objectif est d'avoir 2 campagnes d'envoi de courrier. Je sais qu'il ne peut pas envoyer les deux campagnes à la fois, sauf si j'ai 2 installations, mais même après l'envoi du lot max il ne passe pas à la deuxième campagne. Est-ce que personne n'a d'expérience dans ce domaine?

Merci

Répondre

0

Après bricoler beaucoup et essayer de comprendre pourquoi des e-mails ont été envoyés si lent est descendu à un problème de bande passante. Je pensais que c'était quelque chose à voir avec PHPList et les scripts, mais après avoir vérifié avec notre fournisseur d'hébergement, je peux confirmer qu'ils ont eu des problèmes de bande passante. Donc, tous les fixes et fonctionnant maintenant