Home / ?? ?? ?? / 產(chǎn)品特色 / 手機郵件實時推送:推動(Push)模式和拉動(Pull)模式

手機郵件實時推送:推動(Push)模式和拉動(Pull)模式

push:保持長連接(采用異步socket建立tcp連接),能實時無延遲的收到服務(wù)推送過來的消息。服務(wù)器的域名不會改變,客戶端能夠找到服務(wù)器,而手機客戶端是用的是移動運營商的網(wǎng)絡(luò),若30分鐘(不同省份的運營商設(shè)置的可能不同,大部分運營商設(shè)置的是30分鐘)用戶不使用網(wǎng)絡(luò),運營商可能把這個IP分配給其它的用戶,所以服務(wù)器一般不能實時的找到手機客戶端。所要要實現(xiàn)push,那么就要再服務(wù)器和手機客戶端建立長連接。由于手機客戶端需要連接服務(wù)器的連接很多,通常服務(wù)器要支持集群,畢竟一臺服務(wù)器要實現(xiàn)少沖突的分配長連接端口號,那么就最好不超過20000個連接。Push的好處是實時,維護通道的流量超少,只需要每30分鐘維護一次通道(為保持安全穩(wěn)定最好每14分鐘維護一次通道,就是發(fā)送一次請求,應(yīng)用前后臺切換時有繼續(xù)讓線程僵死,所以應(yīng)用前后切換時要維護一次通道)就可以。個推的透傳和蘋果APNS本質(zhì)就時push長連接,所以他們很省點,也較快。只所以它們沒有做到想象的那么實時是因為蘋果運營的手機是海量的,APNS連接也是海量的,消息的調(diào)度是很費時間的。個推的連接比蘋果少,但是再少也是海量級別的。所以個推付費能提高響應(yīng)速度,但不能從根本上解決問題。想解決響應(yīng)慢的問題只有你自己實現(xiàn)push長連接才更安全可能,畢竟是消息隊列調(diào)度問題還是連接問題你都實時的知道,可以用http請求的方案替代暫時連接異常。大部分郵箱和郵箱客戶端都不真正的支持push。微軟的exchange服務(wù)器的imap idle從實現(xiàn)機制上它是push。

個推的付費用戶也不是單獨給你搭建一個服務(wù)器,而是調(diào)整給你有消息隊列插隊的的特權(quán)。如:你是付費用戶,個推服務(wù)器有1億條消息在排隊,又一次性來1000萬條消息,其中有5000條消息是付費用戶的,那么這5000條消息肯定排列在1億條消息緊挨著的后面,至于這5000條消息的那么就靠誰先來誰就在前面了。若一條消息處理時間是x毫秒,那么你的等待時間最快就是1億*x毫秒。所以你可以看到你的個推消息響應(yīng)時間不但于你的應(yīng)用使用量,也取決于這個時間段消息擁堵狀況,其它人使用個推發(fā)送消息的瞬時情況,個推的透傳可能發(fā)送很快(長連接大部分情況正常,無需建立通道的時間)但是它們大部分時間被耽誤在消息排隊上了。蘋果的APNS服務(wù)器也是一樣,只是沒有插隊的后門而已。自己在服務(wù)器上實現(xiàn)蘋果的APNS的通信功能,不但在要求這方面的技術(shù),最關(guān)鍵的是它不支持類似的安卓手機遠程。而是個推集成了iOS和android這兩方面的遠程推送,所以你若想用不依賴于手機是否開啟都推送消息,最簡單的方法是使用個推。個推的APNS遠程遠沒有個推的透傳來的快,畢竟少了,在個推推送到蘋果APNS服務(wù),在哪里排隊的時間,蘋果的連接可是海量的。個推的付費用戶對你的及時性有所提高,但是也沒有你想象的那么及時,必定要在個推那里進行大量消息排隊。自己實現(xiàn)push長連接,只排隊等待自己應(yīng)用的消息和其它應(yīng)用的消息無關(guān),所以響應(yīng)最快最準確,不用擔心消息丟失率的問題。

Pull:就是定時獲取。優(yōu)點是實現(xiàn)簡單,技術(shù)難點和異常很少。缺點不夠?qū)崟r,若獲取的時間間隔太短,設(shè)備的耗電量超快。還有一種實現(xiàn)方案是結(jié)合push和pull兩者的優(yōu)缺點,具有實時收到消息,實現(xiàn)簡單,耗電量界于兩者間。具體的是建立長連接,卻是10秒維護一次通道(服務(wù)器或客戶端不夠強大,沒有實現(xiàn)監(jiān)控兩者間異常的機制,才頻繁的發(fā)送心跳消息來代替這種異常監(jiān)控機制)。這種方案的優(yōu)點是基本做到了push的省去了發(fā)送請求才建立tcp通道的時間,達到了實時發(fā)送。它可以是異步socket也可以是同步socket。同步socket的優(yōu)點是實現(xiàn)簡單,異常較少;缺點是阻塞連接線程,異步socket的優(yōu)點是實時發(fā)現(xiàn)異常,不阻塞連接線程;缺點是實現(xiàn)相對復(fù)雜,異常較多。綜上所述push的實現(xiàn)方案最優(yōu),pull的實現(xiàn)方案最簡單,兩者結(jié)合的方案是兩者的折中,具體實現(xiàn)那種實現(xiàn)方案,根據(jù)自己技術(shù)團隊的技術(shù)水平和項目緊急水平。金笛郵件系統(tǒng)支持推送方式,用最小的心跳包減少手機的電力消耗,同時又保證的消息的及時性。

日韩v亚洲v欧美v精品综合| 综合视频在线网| 另类天堂在线播放| 国产免费一级视频| 日本wwww在线观看| 中国xxxxx色| 99久久人妻无码精品| 女十八毛片基地| 丰满人妻一区| 亚洲精选专区| 久久99国内精品自在现线| 日韩影院一区| 欧美老人巨大xxxx做受| 天天色加勒比| 色吧五月婷婷| 久久国产精品精品国产色综合| 情侣AV网站| 欧美精品| 综合久久久网| 国产黑丝高跟在线| 日韩激情无码av一区二区| 六月丁香丁香五月| 国产精品免费视频网站| 久久久婷婷六月| 欧美精品videosse精子| 四虎在线免费电影| www.麻豆| 胖女人精品区| 中文字幕内射| 九九视频在线播放免费| 四虎tv影视| 亚洲国产系列| 色嗨嗨av| 免费1级欧美黑寡妇a观看| A一级黄色片一级片| 在线无码AV一区二区三区| 国产97极品在线播放| 又粗又色又爽一区二区三区| 亚洲黄色动作片| 亚洲天天天堂AVI| 欧美wwwwww|