撩課-Web大前端天天5道面試題-Day40

1.git fetch和git pull的區別?

git pull:至關因而從遠程獲取最新版本並merge到本地
 
git fetch:至關因而從遠程獲取最新版本到本地,不會自動merge
複製代碼

2.說說網絡分層裏七層模型是哪七層?

應用層:
應用層、表示層、會話層(從上往下)(HTTP、FTP、SMTP、DNS)

傳輸層(TCP和UDP)

網絡層(IP)

物理和數據鏈路層(以太網)

每一層的做用以下:
物理層:
經過媒介傳輸比特,
肯定機械及電氣規範(比特Bit)
數據鏈路層:
將比特組裝成幀和點到點的傳遞(幀Frame)
網絡層:
負責數據包從源到宿的傳遞和網際互連(包PackeT)
傳輸層:
提供端到端的可靠報文傳遞和錯誤恢復(段Segment)
會話層:
創建、管理和終止會話(會話協議數據單元SPDU)
表示層:
對數據進行翻譯、加密和壓縮(表示協議數據單元PPDU)
應用層:
容許訪問OSI環境的手段(應用協議數據單元APDU)

各類協議:
ICMP協議:
因特網控制報文協議。
它是TCP/IP協議族的一個子協議,
用於在IP主機、路由器之間傳遞控制消息。 
TFTP協議: 
是TCP/IP協議族中的一個用來在客戶機與
服務器之間進行簡單文件傳輸的協議,
提供不復雜、開銷不大的文件傳輸服務。 
HTTP協議: 
超文本傳輸協議,
是一個屬於應用層的面向對象的協議,
因爲其簡捷、快速的方式,
適用於分佈式超媒體信息系統。 
DHCP協議: 
動態主機配置協議,
是一種讓系統得以鏈接到網絡上,
並獲取所須要的配置參數手段。

複製代碼

3.說說mongoDB和MySQL的區別?

`MySQL`是傳統的關係型數據庫,
`MongoDB`則是非關係型數據庫

mongodb以BSON結構(二進制)進行存儲,
對海量數據存儲有着很明顯的優點。

對比傳統關係型數據庫,
NoSQL有着很是顯著的性能和擴展性優點,
與關係型數據庫相比,

MongoDB的優勢有: 
①弱一致性(最終一致),更能保證用戶的訪問速度: 
②文檔結構的存儲方式,可以更便捷的獲取數據。
複製代碼

4.講講304緩存的原理?

服務器首先產生ETag,
服務器可在稍後使用它來判斷頁面是否已經被修改。
本質上,
客戶端經過將該記號傳回服務器
要求服務器驗證其(客戶端)緩存。

304是HTTP狀態碼,
服務器用來標識這個文件沒修改,
不返回內容,
瀏覽器在接收到個狀態碼後,
會使用瀏覽器已緩存的文件

客戶端請求一個頁面(A)。 
服務器返回頁面A,並在給A加上一個ETag。 
客戶端展示該頁面,並將頁面連同ETag一塊兒緩存。 
客戶再次請求頁面A,
並將上次請求時服務器返回的ETag一塊兒傳遞給服務器。 
服務器檢查該ETag,
並判斷出該頁面自上次客戶端請求以後還未被修改,
直接返回響應304(未修改——Not Modified)和一個空的響應體。
複製代碼

5.用node模擬客戶端發起請求?

var http = require("http");
var request = http.request({
    host:"localhost",
    port:"8080",
    path:"/request",
    method:"post"
},function(res){
    res.on("data",function(chunk){
        console.log(chunk.toString());
    });
});
request.write("user=zhang&pass=111");
request.end("請求結束");//結束本次請求
複製代碼
相關文章
相關標籤/搜索