socket 長連線與短連線

2021-06-23 06:25:44 字數 705 閱讀 2046

短連線

連線->傳輸資料->關閉連線 

http是無狀態的,瀏覽器和伺服器每進行一次http操作,就建立一次連線,但任務結束就中斷連線。 

也可以這樣說:短連線是指socket連線後傳送後接收完資料後馬上斷開連線。 

長連線連線->傳輸資料->保持連線 -> 傳輸資料-> 。。。 ->關閉連線。 

長連線指建立socket連線後不管是否使用都保持連線,但安全性較差。 

http的長連線

http也可以建立長連線的,使用connection:keep-alive,http 1.1預設進行持久連線。

什麼時候用長連線,短連線?

長連線多用於操作頻繁,點對點的通訊,而且連線數不能太多情況,。每個tcp連線都需要三步握手,這需要時間,如果每個操作都是先連線,再操作的話那麼處理速度會降低很多,所以每個操作完後都不斷開,次處理時直接傳送資料報就ok了,不用建立tcp連線。例如:資料庫的連線用長連線, 如果用短連線頻繁的通訊會造成socket錯誤,而且頻繁的socket 建立也是對資源的浪費。 

而像web**的http服務一般都用短鏈結,因為長連線對於服務端來說會耗費一定的資源,而像web**這麼頻繁的成千上萬甚至上億客戶端的連線用短連線會更省一些資源,如果用長連線,而且同時有成千上萬的使用者,如果每個使用者都占用乙個連線的話,那可想而知吧。所以併發量大,但每個使用者無需頻繁操作情況下需用短連好。 

總之,長連線和短連線的選擇要視情況而定。

socket短連線 長連線

通常短連線是這樣 連線 傳輸資料 關閉連線 那什麼是長連線?一般長連線相對短連線而言的,長連線在傳輸結束後不關閉連線,而不斷的傳送包保持連線等待處理下乙個資料報。一般長連線用於少數client end to server end的頻繁的通訊,例如 資料庫的連線用長連線,如果用短連線頻繁的通訊會造成s...

Socket 短連線 長連線

socket協議的形象描述 socket的 英文原義是 孔 或 插座 在這裡作為4bds unix的程序通訊機制,取後一種意思。socket非常類似於 插座。以乙個國家級 網為例。的通話雙方相當於相互通訊的2個程序,區號是它的網路位址 區內乙個單位的交換機相當於一台主機,主機分配給每個使用者的局內號...

Socket長連線和短連線

短連線 連線 傳輸資料 關閉連線 http是無狀態的,瀏覽器和伺服器每進行一次http操作,就建立一次連線,但任務結束後就中斷連線。短連線是指socket連線後傳送後接收完資料後馬上斷開連線。長連線 連線 傳輸資料 保持連線 傳輸資料 關閉連線 長連線指建立socket連線後不管是否使用都保持連線,...