Site de Loadbalanced, qu'en est-il des courriels?

Bonjour, j'ai une boutique en ligne et je souhaite configurer la balance de chargement avec la database sur un server distinct, mais ce qui se passera quand il y aura un message envoyé par courrier électronique. Mon idée modeste est que ces servers Web ne savent pas qui est envoyé et peut-être envoyer plusieurs fois? Par exemple, WEB1 triggers l'envoi, puis WEB2 triggers l'envoi des mêmes mails.

One Solution collect form web for “Site de Loadbalanced, qu'en est-il des courriels?”

Vous mettez des travaux de courrier électronique sortants dans une queue, puis un process de travail (peut-être un sur chaque server) consum des messages en queue et agissez sur eux.

Le process de travail réclame un message de queue (ce qui rend indisponible pour les autres travailleurs à consumr), envoie le courrier électronique, puis ACK le message après avoir réussi. Si les messages ne sont PAS ACQUISÉS dans un certain timeout, ils apparaissent dans la queue pour qu'un autre travailleur consum.

RabbitMQ est un système de queue de messages très respecté. Redis, gearman, et même quelque chose comme Amazon's Simple Queue Service sont d'autres options.

Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de réseau.