作者pobie (嗯)
看板PHP
标题Re: [请益] 大量发信後端执行
时间Thu Dec 20 12:49:19 2012
分享一下我类似的做法~~
在後台编辑完EDM时
你可以给这个EDM ITEM一个时间,例如12:30
也可以给他一个排程开启的选项
接着排程你可以自己要一个小时跑一次或一天一次都行
至於排程设定方式,写一个给排程用的php
在用「php x:\xx\cron_send.php」指令下去跑
在排程的php里,如果是一个小时一次,排程设定就每个整点检查一次
例如12点一到,就去捞MySQL检查12点到13点之间有没有排程已开启且要寄的EDM
系统一找到就会自动帮你寄,只是要注意可能会有逾时寄到一半断掉的问题
可以搭配ignore_user_abort(true)与set_time_limit(0)来因应
或者写个log之类的来纪录当次寄出去的EDM有没有寄完
用排程来做的好处就是使用者不用开网页等半天等到寄完,甚至等到出现 500 (囧
所以还是建议写排程来做吧!!
不知有没有解答到你的问题 @@ 参考一下罗~
※ 引述《rock810 ()》之铭言:
: 各位好
: 小弟是php的新手,最近再帮某单位做大量发信的工作(EDM)
: 目前是托别人管理MAIL SERVER的福,大量寄信都没什麽问题
: 只是跑上万笔的回圈寄信,一次一封,要等大约20分钟网页才会跑完
: (也不知道这样写好不好)
: 使用者就是要开着那个页面等个20分钟
: 我知道有的系统是可以在使用者执行後,他可以关掉浏览器去做别的事情
: 剩下的伺服器会帮忙完成
: 现在想实作这一点
: 找了一些资料,但是很杂很乱,没有头绪
: 像是EXEC、排程等等
: 能不能请版上先进给点方向
: 我现在乱想一个是用 PHP 产 MAIL LIST 在用 EXEC 去执行 VBS(自己写一个VBS寄信)
: 只是这样乱凑感觉起来很鸟(没试过也不知道能不能行)...
: 我的环境是WINDOWS SERVER 2008 用PHP的 MAIL() 在寄信
: 感谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.133.44.121
※ 编辑: pobie 来自: 220.133.44.121 (12/20 12:53)
1F:→ rock810:3q~我试看看,搞定後我在分享 12/20 13:30