Page 1 of 1

Autothrottle not working?

PostPosted: 10:50pm, Wed 13 Jul, 2011
by sfatula
Or, it's me of course.

So, configuration parms:

define('USE_DOMAIN_THROTTLE',1);
define('DOMAIN_BATCH_SIZE',1);
define('DOMAIN_BATCH_PERIOD',60);
define('MAILQUEUE_AUTOTHROTTLE',1);
define("MAILQUEUE_BATCH_SIZE",1200);
define("MAILQUEUE_BATCH_PERIOD",3600);

From reading the doc, I would have thought what this should be is try and send 1,200 messages per hour, and, it would take around an hour to do that part (auto throttle). In monitoring the sends, I see things like:

Found them: 13062 to process
batch limit reached: 1200 (1200)
Script stage: 5
1200 messages sent in 1137.98 seconds (3796 msgs/hr)

Well, that means all 1,200 were sent in 19 minutes or so, and, then it waited 41 minutes to start the next batch, where the same thing happened.

Is auto throttle not working then?

I need to be able to send at least this many messages per hour. I'd rather they not be sent that fast. I was hoping auto throttle was a good way to get a semi even spread. I suppose I could try and calculate that spread by playing with MAILQUEUE_THROTTLE. Still, is anyone successfully using auto throttle?

What did I do wrong if so!?

Re: Autothrottle not working?

PostPosted: 1:19am, Mon 18 Jul, 2011
by telechris
define("MAILQUEUE_BATCH_SIZE",1200);

This means how many emails will be sent between every batch period.

define("MAILQUEUE_BATCH_PERIOD",3600);

With the setting you have above, you will send a maximum of 1200 emails every 3600 seconds no matter how many times you try to process the queue.

You best friend in this case is the PHPlist documentation at http://docs.phplist.com/PhpListConfigSendRate

Re: Autothrottle not working?

PostPosted: 1:47am, Mon 18 Jul, 2011
by sfatula
Of course, and, if you kept going, it says:

"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"

Talking about AUTOTHROTTLE, which is what I asked about. It did not do that. So, the 1200 messages should have been spread evenly over 3600 seconds. It was not.

Re: Autothrottle not working?

PostPosted: 4:34am, Mon 18 Jul, 2011
by telechris
Yeah, I don't use AUTO_THROTTLE at all that way. I'd rather have full control. If you want to spread out 1200 messages over 3600, just reduce both variables to how you want it spread. For instance 20 messages (MAILQUEUE_BATCH_SIZE) every 60 seconds (MAILQUEUE_BATCH_PERIOD).

Re: Autothrottle not working?

PostPosted: 4:38am, Mon 18 Jul, 2011
by sfatula
Which is what I did of course, but, I'd still prefer autothrottle to work. Was wondering if anyone had gotten it to work or not. It would be a nice feature.

Re: Autothrottle not working?

PostPosted: 9:22am, Sun 24 Jul, 2011
by duncanc
I have looked into why autothrottle is not appearing to work and have raised an issue on Mantis, the phplist issue tracking system.

See http://mantis.phplist.com/view.php?id=15626