前端面試題總結(jié)
JavaScript面試題總結(jié)
CSS面試題總結(jié)
VUE面試題總結(jié)
前端性能優(yōu)化途徑
- 減少 HTTP 請(qǐng)求
2.合理設(shè)置 HTTP緩存 - 使用服務(wù)端渲染
- 靜態(tài)資源使用 CDN
- 善用緩存,不重復(fù)加載相同的資源
- 壓縮文件
- 圖片優(yōu)化
HTTP狀態(tài)碼
- 200 : 代表請(qǐng)求成功鞭莽;
- 301 : 永久重定向九秀;
- 302: 臨時(shí)轉(zhuǎn)移
- 304 : 讀取緩存 [表示瀏覽器端有緩存鲁僚,并且服務(wù)端未更新嵌洼,不再向服務(wù)端請(qǐng)求資源]
- 307:臨時(shí)重定向
以4開(kāi)頭的都是客戶端的問(wèn)題;
- 400 :數(shù)據(jù)/格式錯(cuò)誤
- 401: 權(quán)限不夠橄抹;
- 404 : 路徑錯(cuò)誤焚刚,找不到文件
以5開(kāi)頭都是服務(wù)端的問(wèn)題
- 500 : 服務(wù)器的問(wèn)題
- 503: 超負(fù)荷;
TCP的三次握手和四次揮手
三次握手
- 第一次握手:客戶端發(fā)送一個(gè)SYN碼給服務(wù)器嗤练,要求建立數(shù)據(jù)連接榛了;
- 第二次握手: 服務(wù)器SYN和自己處理一個(gè)SYN(標(biāo)志);叫SYN+ACK(確認(rèn)包)煞抬;發(fā)送給客戶端霜大,可以建立連接
- 第三次握手: 客戶端再次發(fā)送ACK向服務(wù)器,服務(wù)器驗(yàn)證ACK沒(méi)有問(wèn)題革答,則建立起連接战坤;
四次揮手 - 第一次揮手: 客戶端發(fā)送FIN(結(jié)束)報(bào)文,通知服務(wù)器數(shù)據(jù)已經(jīng)傳輸完畢残拐;
- 第二次揮手: 服務(wù)器接收到之后途茫,通知客戶端我收到了SYN,發(fā)送ACK(確認(rèn))給客戶端,數(shù)據(jù)還沒(méi)有傳輸完成
- 第三次揮手: 服務(wù)器已經(jīng)傳輸完畢溪食,再次發(fā)送FIN通知客戶端囊卜,數(shù)據(jù)已經(jīng)傳輸完畢
- 第四次揮手: 客戶端再次發(fā)送ACK,進(jìn)入TIME_WAIT狀態(tài);服務(wù)器和客戶端關(guān)閉連接;
get和post請(qǐng)求在緩存方面的區(qū)別
get請(qǐng)求類似于查找的過(guò)程栅组,用戶獲取數(shù)據(jù)雀瓢,可以不用每次都與數(shù)據(jù)庫(kù)連接,所以可以使用緩存笑窜。
post不同致燥,post做的一般是修改和刪除的工作,所以必須與數(shù)據(jù)庫(kù)交互排截,所以不能使用緩存嫌蚤。因此get請(qǐng)求適合于請(qǐng)求緩存。
說(shuō)一下用戶從輸入url到顯示頁(yè)面這個(gè)過(guò)程發(fā)生了什么
- DNS解析
- TCP連接
- 發(fā)送HTTP請(qǐng)求
- 服務(wù)器處理請(qǐng)求并返回HTTP報(bào)文
- 瀏覽器解析渲染頁(yè)面
- 連接結(jié)束