It would be great to have email queue system that makes sure that no more than a specific number of emails per hour can be sent from the forum.
Not only should this be included for peoples email sending limits I would like to ad that it is greatly needed for receiving limits, Basically every email provider such as hotmail etc has a limit of emails that you can sent to their domain based on their best practices and to respect their server resources, If a sender sends more than the considered safe amount per time frame you are considered a spammer and your inbox placement suffers.I'm on shared hosting with a 400 per hour limit so I would like this as well.
I placed it as a suggestion although i feel that it is a bug (I felt it would come across as arrogance on my part if I posted it as a bug)Is that a Suggestion or a Support issue ?
Seems logical.Another thing that I would like to put as a suggestion is for the ability to have a separate email address for mailings, registration and general notifications, Once again this falls under email best practices and gives over all better inbox placement.
I do like your train of thought, the only issue's that I can see with not throttling either a single or multiple functions would be the ability to go over a set quota, Lets say for an example that a user has a quota of 100 emails per hour and sets a throttling limit of 90 emails per hour. that users can then keep track of how many non XF emails they send, however if they have ten registrations then their quota is met. I personal thinking is that their would be to many unpredictable variables to ensure that a set quota is met.Seems logical.
Might help with the throttling issue as well.
You wouldn't want registrations throttled. But Mailing should for sure be throttled.
Notifications, depending on how they are used, probably don't need throttling, unless you have a super popular thread, where everyone is watching ... and has email notifications selected.
What I do is run a local copy of Exim which PHP sends the mail to directly (basically a fire and forget about it). Then Exim runs a queue runner every 5 mins and offloads the mail to my smarthost. This way PHP doesn't timeout as Exim is always running.
I dont have exim on my server, since I switched to plesk based control panels. Using mailman at the moment. Would you be able to do a step by step?Deebs showed a method for email throttling.
Exim is a message transfer agent (MTA) developed at the University of Cambridge for use on Unix systems connected to the Internet.
http://www.exim.org/exim-html-current/doc/html/spec_html/index.html (Revision 4.77 - 10 Oct 2011).
An exception occurred: Mysqli prepare error: MySQL server has gone away in /home/gameradi/public_html/gamer/library/Zend/Db/Statement/Mysqli.php on line 77 Zend_Db_Statement_Mysqli->_prepare() in Zend/Db/Statement.php at line 115 Zend_Db_Statement->__construct() in Zend/Db/Adapter/Mysqli.php at line 381 Zend_Db_Adapter_Mysqli->prepare() in Zend/Db/Adapter/Abstract.php at line 478 Zend_Db_Adapter_Abstract->query() in Zend/Db/Adapter/Abstract.php at line 825 Zend_Db_Adapter_Abstract->fetchOne() in XenForo/Error.php at line 50 XenForo_Error::unexpectedException() in XenForo/Application.php at line 295 XenForo_Application::handleException()