IIS SMTP:超出存储分配响应

Jim*_*rts 8 c# iis iis-6 smtp

大家好.我们使用IIS6 SMTP服务发送了大量电子邮件(约23k),每次收到大约7-8条错误消息.堆栈跟踪是:

System.Net.Mail.SmtpException: Exceeded storage allocation. The server response was: 4.3.1 Session size exceeds fixed maximum session size
   at System.Net.Mail.DataStopCommand.CheckResponse(SmtpStatusCode statusCode, String serverResponse)
   at System.Net.Mail.DataStopCommand.Send(SmtpConnection conn)
   at System.Net.Mail.SmtpConnection.OnClose(Object sender, EventArgs args)
   at System.Net.ClosableStream.Close()
   at System.Net.Mail.MailWriter.Close()
   at System.Net.Mail.SmtpClient.Send(MailMessage message)
Run Code Online (Sandbox Code Playgroud)

我们的SMTP配置是:

Limit message size: 2048k
Limit session size: 20240k
Limit # of messages per connection: 20
Limit # of recipients per message: 100
Run Code Online (Sandbox Code Playgroud)

它是否像调整会话大小一样简单?如果是这样,推荐什么?我们应该取消选中限制会话大小吗?

我并不认为自己是SMTP设置专家,但如果我能消除这些错误信息,那么这似乎是向前迈进了一步.

谢谢

吉姆

Lar*_*ryF 9

吉姆,这似乎是磁盘空间不足,存储了要发送的所有临时队列文件.这就是为什么你只看到错误几次.当它发送消息时,我确信它会清理临时文件,为更多空间腾出空间.请记住,您可以发送电子邮件很多,比SMTP服务器向世界提供的速度快很多倍,因此,您可以创建一个地狱的队列.

失败的交付也无济于事......

我会看一个配置选项,它设置允许临时文件使用多少驱动器空间的限制.

会话限制可能仅适用于您的SMTP服务器的所述连接,并且只允许将大量数据泵入您的SMTP服务器,然后才会说"woah buddy ..".