Re: [請益] php mailer 非同步

作者: dlikeayu (太陽拳vs野球拳)   2015-10-27 16:09:29
※ 引述《onininon (萬)》之銘言:
: 大家好:
: 目前在做會員註冊頁面
: 其中有用到php mailer 來寄出認證信
: 使用gmail smtp
: 但每次需要等3~5秒才會顯示註冊完成
: 參考其他網站,好像都立即完成,但是認證信會晚點到
: 是使用httprequest嗎?
: 還是php mailer可以設定成 send不需要等回應 繼續執行php?
: 謝謝
牽扯很多use case問題
如果是註冊,等排程再送信,那最少也要每一分鐘的排程才能做到即時性
(但排程的pattern也很多種,處理中sleep5分鐘等問題,單件複件等...)
所以以UX設定來說,有些網站會做成註冊完即可登入,但非驗證狀態
方便你沒收到確認信,可以再補寄,或換email
而後端做法可以利用curl 去呼叫一個內部用action (allow 127.0.0.1, private ip,
deny all)
該action為處理mail發送因而達成異步效果
也可以背景處理是否發送完成狀態
(前端UI只要來撈發送成功沒即可)
或著也可以試著安裝有支持異步smtp的軟體來達成
(但還是前者比較確實)
看願意付出多少時間來處理這些細節了
作者: locklose (允)   2015-10-29 11:30:00
發問於2011,過了4年了呢
作者: dlikeayu (太陽拳vs野球拳)   2015-10-30 04:18:00
查問題時看到順便解題咯
作者: locklose (允)   2015-10-30 12:29:00
其實還有一個比較常用且應付大量的作法,直接排MQ (笑)我之前做電子報送信跟回條回覆就塞到MQ裡讓worker慢慢跑

Links booklink

Contact Us: admin [ a t ] ucptt.com