It often works best to stash the outgoing emails in a database table that is serviced periodically by a separate daemon process. The daemon sends a certain number of emails each time. If the server sends back an error such as this one, the daemon quits trying for a while, and goes to sleep. If it wakes up, say every five minutes or so, the emails are sure to be sent "within the next ten minutes give-or-take." Trying to send the emails
say, an HTTP page-handler can be problematic for a variety of reasons.