In this design, we’ll look at how to set up email load balancing for outbound emails. If we have thousands of emails to send every hour, we’ll need a load balancer to distribute the outbound email across multiple machines. This is typically found in ISPs and large corporations. During outbound email delivery, we used to scan the mail to check if they are spam or includes any viruses with it. If the recipient servers gets spam or viruses from us we could get blacklisted as a result. Email scanning is a time-consuming process, and if we are to scan thousands of mails per hour, we’ll be needing several computers, or else sending will be impractically delayed.
Why load balance outbound emails ?
Main purpose is to spread the load of outbound emails to multiple machine, so that outbound email scanning and sending don’t make any noticeable delay.
How this Design Works ?
Here, Mail Sending Process is very simple, Our Load Balancer’s hostname is “smtp.mailserverguru.com”, and there are three upstream SMTP servers named “mailx1”, “mailx2” and “mailx3”
1. clients will send mail to “smtp.mailserverguru.com”.
2. Load balancer will receive mail, and send it to the one of upstream SMTP server for sending.
3. Upstream mail server will send to the intended recipient servers.
Another outbound email scenario
this is actually the practical picture of ISP environment, where multiple organizations taking SMTP service, they all are sending their mail to the ISP’s SMTP Load balancer to send to internet.