我有一个网站,它使用大量电子邮件来确认对客户的操作。随着网站的增长,从页面生成的电子邮件数量也同样增长。
最近我们开始看到该网站悬挂(或者至少是发送电子邮件的人)一两分钟。我把它归结为网络问题,但办公室的人不断提高它,所以我调查了。事实证明,虽然电子邮件在95%的情况下正常运行,但一次又一次,电子邮件发送似乎会挂起一段时间,然后这会挂起发送邮件的其他任何人。这就好像CDO只是冻结并阻止队列中的任何人。
我已经通过在调用CDO.Send之前立即编写数据库记录并在其后立即更新结束时间字段来证明这一点...前记录有99%的时间但是现在又一次在记录之后具有NULL日期/时间,因此永远不会调用更新。
CDO似乎没有日志。
代码是正确的,因为它在毛刺之前和之后起作用。有什么想法吗?
编辑:刚刚意识到当同时从两台不同的PC使用电子邮件模块时会发生错误。我们正在谈论一个模块,它发送来自我们客户的送货确认。使用条形码扫描器,我们将订单号和发货号扫描到应用程序中,javascript函数重定向到ASP页面,其中包含要在QueryString中包含在电子邮件中的详细信息。
如果发现相关代码,请尽快发布代码。
答案 0 :(得分:0)
可能是其中一个电子邮件地址不是真实的电子邮件地址,或者某个电子邮件地址未经授权用于您的邮件服务吗?
我问这个是因为我在第一次运行时在IIS中设置站点时总是会出现这样的错误。大多数情况下,不允许localhost(邮件服务器)为该用户或域进行中继。但是,通过已经配置并启用或至少允许从Web服务器中继的邮件服务器进行路由,通常可以解决问题。