Компонент CDO иногда зависает

У меня есть сайт, который использует много писем для подтверждения действий клиентов. По мере роста сайта количество электронных писем, генерируемых со страниц, также увеличивалось.

Недавно мы начали видеть, как сайт зависает (или, по крайней мере, любой, кто собирался отправить электронное письмо) на минуту или две. Я бы списал это на проблемы с сетью, но парни в офисе продолжали поднимать это, так что я исследовал. Оказывается, хотя в 95% случаев электронная почта работает нормально, время от времени кажется, что отправка электронной почты зависает на некоторое время, а затем вешает всех, кто следит за отправкой почты. Как будто CDO просто зависает и блокирует всех в очереди.

Я доказал это, написав запись базы данных непосредственно перед вызовом CDO.Send и обновив поле времени окончания сразу после ... предыдущая запись есть в 99% случаев, но время от времени после записи дата / время NULL, поэтому обновление никогда не вызывается.

У CDO вроде нет логов.

Код правильный, так как он работает до и после сбоя. Любые идеи?

РЕДАКТИРОВАТЬ: только что понял, что ошибка возникает, когда модуль электронной почты используется с двух разных ПК одновременно. Речь идет о модуле, который отправляет подтверждение доставки от наших клиентов. Используя сканер штрих-кода, мы сканируем номер заказа и номер доставки в приложение, а функция javascript перенаправляет на страницу ASP с деталями, которые будут включены в электронное письмо в QueryString.

С удовольствием отправлю код, если он сочтет нужным.


person Samuel Kurtmann    schedule 23.04.2013    source источник
comment
CDO подключается к серверу Exchange? У Exchange Server, вероятно, есть логи. Вы можете проверить, блокирует ли регулирование Exchange Server больше определенного количества электронных писем за период времени.   -  person Joel Spolsky    schedule 24.04.2013
comment
Он подключается к SmarterMail, но журнал SmarterMail не показывает ничего лишнего. Никаких ошибок, никаких исключений не показывает.   -  person Samuel Kurtmann    schedule 24.04.2013
comment
Ни у кого нет намека или что-то в этом роде?   -  person Samuel Kurtmann    schedule 26.04.2013


Ответы (1)


Может быть, один из адресов электронной почты не является настоящим адресом электронной почты или что один адрес электронной почты не авторизован для вашей почтовой службы?

Я спрашиваю об этом, потому что всегда получаю подобные ошибки при настройке сайта в IIS для первого запуска. Чаще всего локальному хосту (почтовому серверу) не разрешается ретранслировать для этого пользователя или домена. Но маршрутизация через почтовый сервер, который уже настроен и включен или, по крайней мере, разрешен ретрансляция с вашего веб-сервера, обычно решает проблему.

person WilliamK    schedule 29.04.2013
comment
Спасибо за ответ. Почта уже маршрутизируется через SMTP-службу SmarterMail и подписывается. Отправка на недопустимые адреса электронной почты должна приводить и приводит к ответам от демона почтовой программы пользовательского домена или от нашего. Отправка на адрес электронной почты # $! @ #! @ #! @ Приводит к ответу демона почтовой программы SmarterMail о том, что адрес недействителен. - person Samuel Kurtmann; 30.04.2013