欧美亚洲中文,在线国自产视频,欧洲一区在线观看视频,亚洲综合中文字幕在线观看

      1. <dfn id="rfwes"></dfn>
          <object id="rfwes"></object>
        1. 站長資訊網(wǎng)
          最全最豐富的資訊網(wǎng)站

          2020全新Java面試題——網(wǎng)絡

          2020全新Java面試題——網(wǎng)絡

          1、http 響應碼 301 和 302 代表的是什么?有什么區(qū)別?

          答:301,302 都是HTTP狀態(tài)的編碼,都代表著某個URL發(fā)生了轉(zhuǎn)移。

          區(qū)別:

          301 redirect: 301 代表永久性轉(zhuǎn)移(Permanently Moved)。

          302 redirect: 302 代表暫時性轉(zhuǎn)移(Temporarily Moved )。

          (推薦教程:java入門程序)

          2、forward 和 redirect 的區(qū)別?

          Forward和Redirect代表了兩種請求轉(zhuǎn)發(fā)方式:直接轉(zhuǎn)發(fā)和間接轉(zhuǎn)發(fā)。

          直接轉(zhuǎn)發(fā)方式(Forward),客戶端和瀏覽器只發(fā)出一次請求,Servlet、HTML、JSP或其它信息資源,由第二個信息資源響應該請求,在請求對象request中,保存的對象對于每個信息資源是共享的。

          間接轉(zhuǎn)發(fā)方式(Redirect)實際是兩次HTTP請求,服務器端在響應第一次請求的時候,讓瀏覽器再向另外一個URL發(fā)出請求,從而達到轉(zhuǎn)發(fā)的目的。

          舉個通俗的例子:

          直接轉(zhuǎn)發(fā)就相當于:“A找B借錢,B說沒有,B去找C借,借到借不到都會把消息傳遞給A”;

          間接轉(zhuǎn)發(fā)就相當于:"A找B借錢,B說沒有,讓A去找C借"。

          (相關(guān)視頻教程推薦:java視頻教程)

          3、簡述 tcp 和 udp的區(qū)別?

          TCP面向連接(如打電話要先撥號建立連接);UDP是無連接的,即發(fā)送數(shù)據(jù)之前不需要建立連接。

          TCP提供可靠的服務。也就是說,通過TCP連接傳送的數(shù)據(jù),無差錯,不丟失,不重復,且按序到達;UDP盡最大努力交付,即不保證可靠交付。

          Tcp通過校驗和,重傳控制,序號標識,滑動窗口、確認應答實現(xiàn)可靠傳輸。如丟包時的重發(fā)控制,還可以對次序亂掉的分包進行順序控制。

          UDP具有較好的實時性,工作效率比TCP高,適用于對高速傳輸和實時性有較高的通信或廣播通信。

          每一條TCP連接只能是點到點的;UDP支持一對一,一對多,多對一和多對多的交互通信。

          TCP對系統(tǒng)資源要求較多,UDP對系統(tǒng)資源要求較少。

          4、tcp 為什么要三次握手,兩次不行嗎?為什么?

          為了實現(xiàn)可靠數(shù)據(jù)傳輸, TCP 協(xié)議的通信雙方, 都必須維護一個序列號, 以標識發(fā)送出去的數(shù)據(jù)包中, 哪些是已經(jīng)被對方收到的。 三次握手的過程即是通信雙方相互告知序列號起始值, 并確認對方已經(jīng)收到了序列號起始值的必經(jīng)步驟。

          如果只是兩次握手, 至多只有連接發(fā)起方的起始序列號能被確認, 另一方選擇的序列號則得不到確認。

          5、說一下 tcp 粘包是怎么產(chǎn)生的?

          (1)發(fā)送方產(chǎn)生粘包

          采用TCP協(xié)議傳輸數(shù)據(jù)的客戶端與服務器經(jīng)常是保持一個長連接的狀態(tài)(一次連接發(fā)一次數(shù)據(jù)不存在粘包),雙方在連接不斷開的情況下,可以一直傳輸數(shù)據(jù);但當發(fā)送的數(shù)據(jù)包過于的小時,那么TCP協(xié)議默認的會啟用Nagle算法,將這些較小的數(shù)據(jù)包進行合并發(fā)送(緩沖區(qū)數(shù)據(jù)發(fā)送是一個堆壓的過程);這個合并過程就是在發(fā)送緩沖區(qū)中進行的,也就是說數(shù)據(jù)發(fā)送出來它已經(jīng)是粘包的狀態(tài)了。

          2020全新Java面試題——網(wǎng)絡

          (2)接收方產(chǎn)生粘包

          接收方采用TCP協(xié)議接收數(shù)據(jù)時的過程是這樣的:數(shù)據(jù)到底接收方,從網(wǎng)絡模型的下方傳遞至傳輸層,傳輸層的TCP協(xié)議處理是將其放置接收緩沖區(qū),然后由應用層來主動獲?。–語言用recv、read等函數(shù));這時會出現(xiàn)一個問題,就是我們在程序中調(diào)用的讀取數(shù)據(jù)函數(shù)不能及時的把緩沖區(qū)中的數(shù)據(jù)拿出來,而下一個數(shù)據(jù)又到來并有一部分放入的緩沖區(qū)末尾,等我們讀取數(shù)據(jù)時就是一個粘包。(放數(shù)據(jù)的速度 > 應用層拿數(shù)據(jù)速度)

          2020全新Java面試題——網(wǎng)絡

          2020全新Java面試題——網(wǎng)絡

          如果您想知道

          贊(0)
          分享到: 更多 (0)
          網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號