前言
進入移動互聯網時代以來,大部分廠商需要通過移動推送的方式來向用戶推送各種訊息和通知(比如優惠活動等),來增加和用戶的粘度,本文主要針對移動推送,來總結一下自己最近的學習經驗,
最早起源于Email的推送,進入到移動端領域,則主要側重于移動客戶端,而客戶端來獲取服務端的資料,主要有兩種方式:
- 第一種是客戶端 PULL(拉)方式,即每隔一段時間去服務器獲取是否有資料;
- 優點:簡單;
- 缺點:實時性較差,
我們也可以通過提高查詢頻率來提高實時性,但這又會造電量、流量的消耗過高,
- 第二種是服務端 PUSH(推)方式,服務器在有資料的時候主動發給客戶端,該方式基于 TCP 長連接方式實作,
- 優點:訊息實時性好;
- 缺點:要保持 APP 客戶端和服務端的長連接心跳,會帶來額外的電量和流量消耗;
一句話總結
因此在整體架構設計中需要折中平衡,目前主流的推送實作方式都是基于 PUSH 的方案,
移動推送的三種方式
目前,移動推送主要有三種實作方式,其中PULL一種,PUSH兩種,具體如下文:
輪詢()PULL)
客戶端和服務端定期建立連接,通過異步訊息佇列來查詢服務端是否有新的資料,但是,這種方式的最大的問題是不好控制查詢的頻率:
- 頻率過低資料更新不及時;
- 頻率過高則會加快資源的消耗(電量和流量等),
短信推送 (SMS PUSH)
該方式借助運營商的短訊息,通過短信形式來向用戶推送訊息,優點突出:能夠最好的保證訊息的實時性;但是,缺點同樣不容忽視:采取該方式,會根據發送訊息的條數支付相應的費用,成本較高,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/51398.html
標籤:其他
上一篇:程式員一般通過什么途徑接私活?
下一篇:別了,我的程式員生涯!
