我们的CF服务器有时会停止处理邮件。这是有问题的,因为我们的许多客户都依赖它。
我们在网上找到了一些建议,这些建议提到了undeliverable文件夹中的零字节文件,因此我创建了一个任务,每三分钟将其删除一次。但是,再次发生了停止。
我正在寻找诊断和解决此问题的建议。
CF 8标准
Win2k3
添加:
队列失败时,邮件日志中没有错误
由于我们发送了大量邮件,因此我们没有尝试不使用队列来运行它
新增2:
假脱机文件夹中的任何文件似乎都不是问题。当我们重新启动邮件队列时,它们似乎都可以正确处理。
新增3:
我们没有使用附件。
最佳答案
我们最终要做的是:
我写了两个预定任务。第一个检查队列队列中是否有任何消息早于n个分钟(当前设置为30个)。第二个每晚在低使用率时重置队列。
不幸的是,我们从未真正发现队列为什么会脱离轨道,但是它似乎仅在使用Exchange时发生-我们尝试过的其他邮件服务器没有此问题。
编辑:我被要求发布我的代码,因此这是在发现旧邮件时重新启动的代码:
<cfdirectory action="list" directory="c:\coldfusion8\mail\spool\" name="spool" sort="datelastmodified">
<cfset restart = 0>
<cfif datediff('n', spool.datelastmodified, now()) gt 30>
<cfset restart = 1>
</cfif>
<cfif restart>
<cfset sFactory = CreateObject("java","coldfusion.server.ServiceFactory")>
<cfset MailSpoolService = sFactory.mailSpoolService>
<cfset MailSpoolService.stop()>
<cfset MailSpoolService.start()>
</cfif>
关于coldfusion - ColdFusion邮件队列停止处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/94932/