手機(jī)短信發(fā)送已經(jīng)成為網(wǎng)站的標(biāo)配功能。許多人認(rèn)為,短信發(fā)送功能只是簡單地對接一個短信平臺即可,但實際上,這項功能遠(yuǎn)比現(xiàn)象中復(fù)雜。WebFuture 的手機(jī)短信發(fā)送模塊具備許多亮點設(shè)計,功能豐富且細(xì)致入微。
手機(jī)短信發(fā)送機(jī)制的改進(jìn)
如果手機(jī)短信發(fā)送是直接提交給短信平臺,而本地不保留發(fā)送記錄,這樣的設(shè)計會存在一些問題:
- 無法排查短信發(fā)送模塊的功能是否正常(是否成功發(fā)送?內(nèi)容是否正確?),只能通過短信服務(wù)商的后臺查詢。
- 缺乏重發(fā)機(jī)制,如果短信平臺偶爾出現(xiàn)故障,就會導(dǎo)致短信丟失。當(dāng)短信平臺故障導(dǎo)致無法發(fā)送時,無法及時報警。
- 無法排查短信發(fā)送模塊的功能是否正常(是否成功發(fā)送?內(nèi)容是否正確?),只能通過短信服務(wù)商的后臺查詢。
- 缺乏重發(fā)機(jī)制,如果短信平臺偶爾出現(xiàn)故障,就會導(dǎo)致短信丟失。當(dāng)短信平臺故障導(dǎo)致無法發(fā)送時,無法及時報警。
而 WebFuture 的手機(jī)短信發(fā)送機(jī)制是:首先將短信記錄保存在本地服務(wù)器中,然后通過短信發(fā)送服務(wù)不間斷地輪詢短信記錄表,將未發(fā)送或發(fā)送失敗的短信重新發(fā)送出去。這樣就解決了直接提交短信平臺模式下的上述問題。
支持多個短信發(fā)送平臺的接口
支持中國移動、中國聯(lián)通、中國電信等運(yùn)營商以及名傳無線等專業(yè)短信發(fā)送平臺的手機(jī)短信發(fā)送接口。
短信發(fā)送記錄管理
支持對短信發(fā)送記錄進(jìn)行查看、篩選、搜索、刪除等功能,支持對短信進(jìn)行重發(fā)等功能。
支持短信發(fā)送的優(yōu)先級控制
支持短信發(fā)送的優(yōu)先級控制,手機(jī)短信驗證碼之類的短信優(yōu)先發(fā)送,而廣告類的短信則優(yōu)先級最低。
支持短信發(fā)送速度控制
短信發(fā)送平臺通常具備防止 CC 攻擊的機(jī)制,如果提交的短信并發(fā)量過大,就可能被短信平臺視為垃圾短信而拒絕服務(wù)。因此,我們設(shè)計了短信發(fā)送機(jī)制:每發(fā)送一條短信后休眠 0.3 秒,發(fā)送完本輪次的所有短信后再休眠 1 秒,隨后繼續(xù)下一輪的 10 條短信發(fā)送。如果當(dāng)前沒有待發(fā)送的短信,則休眠 5 秒后重新輪詢。這樣可以有效避免被短信平臺拒絕服務(wù)的問題。
支持短信發(fā)送失敗后的重發(fā)機(jī)制
如果某條短信發(fā)送失?。ɡ缡謾C(jī)號碼無效,或短信服務(wù)商出現(xiàn)短暫故障),短信發(fā)送服務(wù)將在下一輪次繼續(xù)嘗試重新發(fā)送,最多可嘗試 N 次(N 值可配置)。此外,還可以在短信發(fā)送記錄管理界面中手動重新發(fā)送。
支持短信發(fā)送平臺故障報警功能
當(dāng)發(fā)送失敗次數(shù)達(dá)到 N 次的不同手機(jī)號碼的短信數(shù)量累計到 10 條時(這可能意味著短信平臺出現(xiàn)問題),系統(tǒng)將向平臺超級管理員發(fā)送站內(nèi)短信和郵件進(jìn)行報警(因為此時手機(jī)短信功能可能不可用)。
報警后,系統(tǒng)會自動暫停短信發(fā)送半小時,但仍允許添加新的短信發(fā)送記錄(僅記錄,等待系統(tǒng)恢復(fù)發(fā)送)。半小時后會重新嘗試發(fā)送,如果仍然失敗,則再暫停半小時。整個暫停和恢復(fù)過程均為自動化,無需管理員手動干預(yù)。管理員也可以在暫停期間手動恢復(fù)(例如確認(rèn)短信平臺已恢復(fù)正常時,可以立即恢復(fù)發(fā)送,無需等待半小時)。
支持短信發(fā)送量異常報警功能
系統(tǒng)每20分鐘統(tǒng)計一次短信記錄表中的最近一小時的短信數(shù)量,若超過報警值(可配置),將向平臺超管發(fā)送報警短信。
支持短信發(fā)送量統(tǒng)計功能
提供按日和按月兩種統(tǒng)計表。統(tǒng)計每日/每月發(fā)送的短信發(fā)送總量、發(fā)送成功數(shù)量、發(fā)送失敗數(shù)量。便于與短信服務(wù)商進(jìn)行對帳。
用戶登錄
還沒有賬號?
立即注冊