Почему вы отправляете электронную почту в пакетном режиме, а не индивидуально? - PullRequest
3 голосов
/ 10 августа 2011

У нас есть служба Windows, которая проверяет соблюдение определенных условий, и мы отправим клиенту электронное письмо. У нас будет около 50 писем для отправки каждый день. У меня вопрос: лучше ли отправлять электронные письма индивидуально (то есть каждый раз, когда выполняется условие, запускает функцию sendmail) или ставить в очередь все электронные письма и отправлять пакет? Лучше отправить пакет из соображений производительности? Но мы отправляем только около 50 писем в день, так что это не имеет большого значения? Как бы вы поставили электронные письма в очередь, если они должны отправляться партиями?

Большое спасибо

Ответы [ 3 ]

3 голосов
/ 10 августа 2011

Как правило, причиной пакетирования нескольких электронных писем в одном электронном письме является не раздражение получателя, а не производительность. 50 электронных писем в течение дня могут быть очень раздражающими и быстро заставят получателя «отключиться», тогда как одно электронное письмо, содержащее все соответствующие уведомления, может быть легче переварить.

Относительно того, как ставить электронную почту в очередь, было бы лучше, если бы вы могли изменить саму службу для хранения исходящих электронных писем в файле или буфере и отправлять содержимое этого файла или буфера только один раз определенный порог достигнут - будь то временной порог или порог размера.

2 голосов
/ 10 августа 2011

Если вы отправляете только 50 электронных писем в день, вопрос совершенно спорный.

С точки зрения фактического сервера, SMTP не заботится о том, отправляете ли вы пакетно или индивидуально, он просто работает через очередь невыполненных работ электронной почты для отправки.

Единственная реальная проблема должна возникать в том случае, если вам необходимо постоянно запрашивать в вашей БД сообщения для отправки электронной почты, или если вы хотите запросить в вашей БД информацию об отправляемых партиях (чтобы сократить количество запросов БД).

0 голосов
/ 10 августа 2011

Игнорируя производительность, нужно помнить еще одну вещь: нужен ли пользователю этот адрес электронной почты, как только будет выполнено условие?Если это так, даже не думайте ставить в очередь сообщения, если вы не очищаете очередь почти на постоянной основе.

В противном случае это действительно ваше дело.50 электронных писем в день не сломают ваш сервер, поэтому я не буду беспокоиться о производительности.С другой стороны, если вам и вашим пользователям удобно отправлять электронные письма в пакетном режиме, сделайте это.

...