成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

WebSocket是什么原理?為什么能實(shí)現(xiàn)持久化連接?

網(wǎng)絡(luò) 通信技術(shù)
為了更好的理解WebSocket,我們需要從HTTP開(kāi)始說(shuō)起。因?yàn)楹芏鄷r(shí)候,大家都喜歡拿WebSocket和HTTP做比較。

[[396397]]

為了更好的理解WebSocket,我們需要從HTTP開(kāi)始說(shuō)起。因?yàn)楹芏鄷r(shí)候,大家都喜歡拿WebSocket和HTTP做比較。

HTTP的生命周期,通過(guò)Request來(lái)界定,一個(gè)Request和一個(gè)Response,這次HTTP請(qǐng)求也就結(jié)束了。

在HTTP1.1中,允許發(fā)送多個(gè)Request和接收多個(gè)Response,但無(wú)論如何,Request永遠(yuǎn)等于Response。

很多網(wǎng)站為了實(shí)現(xiàn)實(shí)時(shí)的信息傳遞,都會(huì)使用輪詢(xún)技術(shù),輪詢(xún)有兩種,一種是ajax輪詢(xún),一種是長(zhǎng)輪詢(xún)(long poll)。

ajax輪詢(xún)的原理很簡(jiǎn)單,讓瀏覽器每隔幾秒向服務(wù)器發(fā)送一次請(qǐng)求,詢(xún)問(wèn)服務(wù)器是否有新的信息。

客戶(hù)端:有沒(méi)有新信息,沒(méi)有我等會(huì)再問(wèn)(Request)

服務(wù)器:沒(méi)有(Response)

客戶(hù)端:有沒(méi)有,沒(méi)有我等會(huì)再問(wèn)(Request)

服務(wù)器:沒(méi)有(Response)

客戶(hù)端:有沒(méi)有新信息,沒(méi)有我等會(huì)再問(wèn)(Request)

服務(wù)器:有,發(fā)給你了(Response)

長(zhǎng)輪詢(xún)與ajax輪詢(xún)相似,不同的是,當(dāng)客戶(hù)端發(fā)起請(qǐng)求后,如果沒(méi)有消息,就一直不返回Response,直到有新消息為止。

客戶(hù)端:有沒(méi)有新信息,沒(méi)有不要回我(Request)

……

服務(wù)器:現(xiàn)在有了,給你(Response)

以上兩種方式,都在不斷地建立HTTP連接,只有客戶(hù)端發(fā)起請(qǐng)求時(shí),服務(wù)端才能回應(yīng),服務(wù)端是不能主動(dòng)發(fā)起的。

而且HTTP還是一個(gè)無(wú)狀態(tài)協(xié)議,服務(wù)器不會(huì)保留與客戶(hù)交易時(shí)的任何狀態(tài),這樣做的好處是大大減輕了服務(wù)器的記憶負(fù)擔(dān),保持較快的響應(yīng)速度。

不過(guò)因此也產(chǎn)生了一些問(wèn)題。客戶(hù)端要不斷地發(fā)送HTTP請(qǐng)求,每次都要帶上較長(zhǎng)的頭部,真正有效的數(shù)據(jù)可能很少,浪費(fèi)很多帶寬資源,也給服務(wù)器增加了壓力。

好了,我們的主角WebSocket終于可以登場(chǎng)了。

相對(duì)HTTP來(lái)說(shuō),WebSocket是一種持久化的協(xié)議。它會(huì)基于HTTP協(xié)議,來(lái)完成一部分握手,之后就脫離HTTP,完全采用WebSocket了。

建立WebSocket連接的過(guò)程為:

  • 客戶(hù)端發(fā)起HTTP請(qǐng)求,經(jīng)過(guò)3次握手建立TCP連接,HTTP請(qǐng)求里存放WebSocket支持的版本號(hào)等信息。
  • 服務(wù)器收到客戶(hù)端握手請(qǐng)求后,回饋數(shù)據(jù)。

以上兩個(gè)步驟完成后,HTTP握手部分完成,協(xié)議升級(jí)為WebSocket,此時(shí)服務(wù)器就不再需要客戶(hù)端發(fā)起請(qǐng)求,再響應(yīng)請(qǐng)求了,可以主動(dòng)推送信息給客戶(hù)端了。

客戶(hù)端:我要建立WebSocket協(xié)議。

服務(wù)器:好的,已經(jīng)升級(jí)為WebSocket協(xié)議了。

客戶(hù)端:有信息的時(shí)候,推送給我。

服務(wù)器:好的,有信息會(huì)推給你。

服務(wù)器:有信息了,給你。

服務(wù)器:又有信息了,給你。

……

只需經(jīng)過(guò)一次HTTP請(qǐng)求,服務(wù)器就能源源不斷地向客戶(hù)端推送信息了!

從客戶(hù)端主動(dòng)詢(xún)問(wèn),變成服務(wù)器主動(dòng)推送,解決了服務(wù)器上資源消耗較多的問(wèn)題。

以上便是WebSocket原理以及實(shí)現(xiàn)持久化連接的過(guò)程。

 

 

責(zé)任編輯:趙寧寧 來(lái)源: 今日頭條
相關(guān)推薦

2024-01-11 08:53:58

2018-02-07 00:00:00

數(shù)字化轉(zhuǎn)型

2017-07-11 13:58:10

WebSocket

2009-06-01 15:12:05

JPA是什么對(duì)象持久化ORM

2019-11-27 09:03:49

JavaScriptJavaCSS

2025-03-27 04:00:00

2009-06-25 16:07:30

JPAJava EE

2018-08-02 15:24:05

RPCJava微服務(wù)

2024-09-04 10:44:19

2022-07-08 08:37:23

Nacos服務(wù)注冊(cè)動(dòng)態(tài)配置

2022-02-25 14:11:48

短網(wǎng)址Java算法

2024-06-06 08:53:13

動(dòng)態(tài)鏈接庫(kù)共享庫(kù)

2022-10-08 00:00:00

websocket協(xié)議HTTP

2024-07-15 08:20:24

2022-07-14 07:17:11

LXCDocker語(yǔ)言

2018-07-18 15:02:54

混合云云戰(zhàn)略安全

2023-04-04 07:15:01

2018-07-09 14:44:27

存儲(chǔ)

2024-06-05 09:26:07

2017-04-14 10:11:37

閃存備份用例
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 精品视频在线观看 | 黄色在线观看网站 | 毛片网站在线观看视频 | 国产成人综合av | 午夜小电影 | 国产精品一区二区三区久久 | 国产在线观看一区二区三区 | 9porny九色视频自拍 | 色中文在线 | 一区二区免费在线视频 | 国产美女视频一区 | 成人亚洲性情网站www在线观看 | 天天综合日日夜夜 | 欧美在线色视频 | 一区二区三区视频在线观看 | 欧美精品一区二区在线观看 | 蜜桃av一区二区三区 | 亚洲国产激情 | 久久综合伊人 | 午夜视频在线免费观看 | 综合久久av | 天天干天天玩天天操 | 99国产精品99久久久久久粉嫩 | 一本色道久久综合亚洲精品高清 | 欧美一区二区在线播放 | 天堂久久天堂综合色 | 免费看一级毛片 | 国产区精品| 国产精品视频一区二区三区 | 国产成人午夜电影网 | 日韩欧美一级 | 国产在线一区二区三区 | 亚洲成人av一区二区 | 国产欧美一区二区三区在线看 | 久久精品欧美一区二区三区不卡 | 国产免费一区二区三区免费视频 | 国产一级片av| 99re视频在线观看 | 中文字幕在线剧情 | 免费的一级视频 | 91久久久久久久久久久 |