9. A method of efficiently generating and sending emails, comprising: creating an email template; setting up a campaign query; distributing the email template and a set of information associated with the campaign query to an application server at each of a plurality of server groups; replicating the email template and the set of information associated with the campaign query to one or more replication servers at each of the plurality of server groups; running the campaign query on each of the one or more replication servers at each of the plurality of server groups and obtaining a plurality of matching users on each of the one or more replication servers; dividing the plurality of matching users on each of the plurality of server groups into one or more batches of users; merging the email template with a set of information corresponding to each of the plurality of matching users from a first batch of users to generate a first batch of merged emails for each of the plurality of server groups; queuing the merged emails in a memory buffer based on email domains of the matching users; sending the first batch of merged emails directly from each of the plurality of server groups without saving copies of the merged emails; marking a status of what portion of the first batch of the merged emails was sent before a shutdown of at least one server in the plurality of server groups; and resuming the sending of the first batch of the merged emails when the at least one server in the plurality of server groups is restarted after shutdown.
12. The method of claim 9 , further comprising determining if a sent email was delivered to a domain associated with a particular user and making one or more subsequent delivery attempts if the sent email was not delivered.