1.介紹
- HTML5服務(wù)器推送事件
是HTML5規(guī)范的一個(gè)組成部分刮刑,可以用來從服務(wù)端實(shí)時(shí)推送數(shù)據(jù)到瀏覽器端。 -
傳統(tǒng)的服務(wù)器端推送數(shù)據(jù)技術(shù)
1)WebSocket
WebSocket:WebSocket規(guī)范是HTML5的重要組成部分蒲赂,被很多主流瀏覽器支持。
WebSocket使用套接字連接善已,基于Tcp協(xié)議鹏氧。使用WebSocket之后,在服務(wù)器端和瀏覽器之間建立一個(gè)套接字連接片吊,可以進(jìn)行雙向數(shù)據(jù)傳輸绽昏。
2)輪詢
短輪詢:瀏覽器定時(shí)向服務(wù)器發(fā)送請求,看有沒有更新的數(shù)據(jù)俏脊。
長輪詢:頁面向服務(wù)器發(fā)送一個(gè)請求全谤,之后服務(wù)器一直保持連接打開,直到有數(shù)據(jù)可發(fā)送爷贫。數(shù)據(jù)發(fā)送完成后瀏覽器關(guān)閉連接认然,隨即由發(fā)送一個(gè)到服務(wù)器的新請求。頁面打開期間一直持續(xù)不斷漫萄。
輪詢的時(shí)間間隔過長卷员,會(huì)導(dǎo)致用戶不能及時(shí)接收到更新的數(shù)據(jù);
輪詢的時(shí)間間隔過短腾务,會(huì)導(dǎo)致查詢請求過多毕骡,增加服務(wù)器端的負(fù)擔(dān)。
HTML5服務(wù)器推送事件實(shí)現(xiàn)
1.服務(wù)器代碼頭
2.EventSource對象
index.js