我遇到了一个问题,我的邮件服务器每5分钟只接受100个与服务器的连接。我当前的代码遍历我的数据库,为列表中的每个人调用cfmail。我想问题是我每次使用cfmail时都会打开一个新连接吗?
<CFLOOP QUERY="Customer" >
<!---send mail to Admin ----->
<cfmail to = "#cstEmail#"
from = "#FORM.fromAddressEmail#"
subject = "#FORM.subjectEmail#"
server = "#var.mailserver#"
port= "#var.mailport#"
username="#var.mailuser#"
password="#var.mailpass#"
failto="#var.failEmail#
type="html"
>
我遇到的是一次只发送100封邮件,其余邮件被发送到cf的未送达文件夹。我会将它们发送到假脱机,然后100会通过..
现在,我已经读过旧版本的cf,cf管理员中有一个复选框来“维护连接” - 我正在运行cf9并且没有看到这个选项。
会使用cfmail的查询属性,强制cfmail只连接一次邮件服务器发送所有邮件吗?
<cfmail query="Customer"
from = "#FORM.fromAddressEmail#"
to = "#cstEmail#"
subject = "#FORM.subjectEmail#">
我甚至不确定如何测试这个而不发送几百封电子邮件。如果这是解决这个问题的可行办法,有什么想法吗?
感谢您的帮助! 脆饼
答案 0 :(得分:1)
我最终通过使用计划任务将文件每隔5分钟从Undelivr目录移回Spool目录来进行攻击。我对此解决方案并不感到兴奋,但它确实有效。
感谢Russ的Respooler扩展。 http://cfrespooler.riaforge.org/
答案 1 :(得分:0)
通过使用上面的代码在CFMAIL中调用QUERY,我只是成功地加速了客户端进程。邮件服务器仍然在第100次连接后拒绝了邮件 - 这导致我确定这种方法没有服务器方面的好处而只是简单地循环CFMAIL,就像在我的第一个例子中一样。我似乎唯一的答案是在cf环境的企业版中运行代码,该代码启用了“维护连接”功能。