The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
Cron based e-mail sending Details »» | |||||||||||||||||||||||||
As of 24 Nov 2017 this modification has been withdrawn.
In default vBulletin, if you send a large number of e-mails, vbulletin either puts them in it's queue and attempts to send them as each user visits a page, or just simply tries to send them straight away (as is the case when you use the Administrators email users inteface). The result of this can be that your server can gets seriously overloaded very quickly - or on many hosts, you get banned for exceeding their e-mail sending limits. This can make sending several thousand e-mails (like a newsletter) very difficult. This modification does two things ; 1. The processing of the mail queue is set-up as a vbulletin cron item. 2. Allows you to add a small delay before each e-mail is sent (between 1 and 9 seconds). 3. E-mails from the ACP inteface are sent to the mail queue, not straight to the mail system. Use option 2 carefully, otherwise you will slow your e-mail system right down. For this to work, you must turn on e-mail queuing in the ACP options - set 'Use Mailqueue System' to 'Yes', and 'Number of Emails to Send Per Batch' to a realistic value (based on the cron setting, as below). There are two options for the cron job, you can either set it to run every minute, and set the items to be processed to something small (like 10), or you can do what this modification does by default and set it to run every 10 minutes, and set the items to be processed to something larger (like 100). Remember, 10 per minute = 600 per hour, 100 per 10 minutes is also 600 per hour. The numbers really depend on how quick you want large queues processed, and how much your mail server can handle in one go. Once working, when using the ACP mail users inteface, remember you can set it to process 9999 at once (not 500 or whatever) as the mails will now go into the queue, not be sent directly. Note: This modification will affect any queued e-mails such as subscription e-mails. It will not affect registration e-mails as they bypass queuing anyway. This modification includes the code by Antivirus that displays the current size of the mail queue. History: v3.8.001 : First Release for vB 3.8. Show Your Support
|
4 благодарности(ей) от: | ||
ahmedeldeep, need2fart, rpgamersnet, xorex |
Comments |
#272
|
||||
|
||||
Hi Paul, quick question please.
I want to use this purely for when I send out bulk emails, so instead of installing and uninstalling each time, can I simply change from 'yes' to 'no' in the vb options for using the mailqueue system, will that then stop vb from using this mod and it will revert to sending out the emails normally? Or does this mod have to be removed before that will happen? Thanks. |
#273
|
||||
|
||||
As far as I'm aware that would work. Its a long while since i did anything with the e-mail system.
|
#274
|
|||
|
|||
I have a large forum (about 80,000). I installed the mod and set batch size (in Email options) to 70 with a 6 second delay, and to process every 10 mins in the scheduled tasks. When I attempt to send emails from ACP> Users> "Send emails to users" the process will begin and it shows me emails sending successfully every 6 seconds. (on that page Emails to send at once is set to 500).
Is it possible for me to NOT keep this page open? It would take it like 8 days to run and I'm certain it would timeout within an hour. How do I get this process to work after leaving the emailing page, or how do I get it to go to the queue so it can then be sent out slowly? |
#275
|
||||
|
||||
The only way you could do this is to set it to 0 while using the "Send emails to users" - it should then zoom through them at 500 a time (but is just adding them to the queue, not sending them). Once done, change the value back to 6. I would add that I think 6 is an excessivly large value to use.
|
#276
|
|||
|
|||
Quote:
With such a huge memberbase as mine, would you suggest setting to 0, and then processing smaller batches every minute (rather than 10), so my server doesn't get bogged down? And once all were added to the queue and changing the value back to 6, would that apply the 6 second delay to the processing of the queue? Thanks Paul |
#277
|
||||
|
||||
Quote:
Yes, it should. |
#278
|
|||
|
|||
Thanks Paul. I'll run it today and let everyone know if that was successful!
|
#279
|
|||
|
|||
Hi Paul I've been using this for a while, but for some reason my daily digest (email sent once a day) doesn't queue up even though mass mailing do.
I have set it to mailqueue on, and the system works fine other then the daily digest emails which timeout or cause high server load. Any ideas? Thanks for the great mod. |
#280
|
||||
|
||||
It would depend on whether vb queues them by default, this wont process them unless the original code queues them in the first place.
|
#281
|
|||
|
|||
I am running latest 3.8.7 and have over 150K members.
Will this work on the current latest 3.8.7 |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|