一、網路知識
1、內網:在內網部署的應用,預設只能用內網位址在同乙個區域網內互連互通訪問,在外網其他網路環境下是訪問不到的。
2、穿透:二點直連方式,如二台電腦網線直通,穿透是不限速的,速度是二端間的較小速度端的速度。
3、對映:乙個位址對映到另乙個位址,通過某個介質進行中轉,常常用於將內網位址對映到外網位址實現外網的訪問,速度是本地公網上行和對映服務端分配的較小值速度。
二、一次完整的http請求所經歷的7個步驟
1、建立tcp連線
2、web瀏覽器向web伺服器傳送請求命令
3、web瀏覽器傳送請求頭資訊
4、web伺服器應答
5、web伺服器傳送應答頭資訊
6、web伺服器向瀏覽器傳送資料
7、web伺服器關閉tcp連線
三、從瀏覽器輸入url到頁面呈現經歷了哪些過程
1、dns解析:
瀏覽器獲取網域名稱,
檢查瀏覽器快取中是否有該網域名稱的解析,
檢查電腦的本地快取中是否有該解析,
檢查host檔案中是否有該解析,
向網域名稱解析商發起請求獲取解析,並快取起來
以上步驟只要檢查到有相應的dns解析,就能獲取到伺服器的ip位址
2、根據tcp/ip協議,瀏覽器和伺服器發起三次握手
3、tcp/ip連線完成後,瀏覽器發起http請求
4、伺服器接收到請求,返回相應的資源(資料或者html檔案)
5、解析html,載入相應的靜態資源檔案(js、css、等)
6、瀏覽器根據自身的機制,生成html dom樹、css dom樹,進行相應的計算和渲染,最終生成頁面呈現出來
四、渲染過程(webkit和gecko都差不多)
1、解析html,得到乙個dom tree
2、解析css,得到cssom tree
3、將兩者整合成渲染數,render tree
4、布局(layout), 根據render tree計算每個節點的位置大小等資訊 (在草稿本上畫了個草圖)
5、繪製(painting )根據計算好的資訊繪製整個頁面
注: 1、2、3非常快,但是4和5比較耗時,有三個術語:
「重排」 和 「回流」 指的是重新執行步驟4
「重繪」 指重新執行步驟5
重排意味著重新計算節點的位置大小等資訊,重新在草稿本上畫了草圖,所以一定會重繪
重繪不一定會重排,比如背景顏色改變
重排和重繪代價很高,所以瀏覽器並不會一有資訊改變就去執行重排和重繪,而是會將多個可能的重排和重繪一次執行。是的,它可能會非同步。
有兩個css屬性,display: none和visibility: hidden,前者會導致重排和重繪,後者會導致重繪。這是後者的有點,但缺點是此節點一直儲存在記憶體中,占用資源。
計算機基礎知識 計算機基礎知識彙總
計算機專業的那六大件 組成原理,作業系統,資料庫,編譯原理,計算機網路,資料結構,其次還得加上分布式的基礎知識,因為現在的系統都變成分布式的了。如果你是做應用層開發的,那幾門課程中的有些內容和日常工作關聯度不大,我挑那些最重要的來說一說,也算是乙個最小集合吧!1,計算機組成原理 如果你不是做作業系統...
計算機基礎知識 關於計算機的基礎知識
一 計算機發展 世界計算機 1 第一台計算機 eniac,1946年,美國研製的世界上第一台計算機,開闢了計算機技術的新紀元。2 計算機之父 馮 諾依曼參與eniac研究,提出計算機的二進位制 五大組成部分 程式控制。3 計算機發展階段 第一代電子管計算機 1946 1958年。第二代電晶體計算機 ...
Java 基礎知識記錄
int整型 string字串型 char字元型 float,double浮點型別,即小數,使用float時小數後加f 輸出字元system.out.println hello world 每個println獨佔一行,print合併在同一行 自增 自減 加 減 乘 除法 餘數 與 或 非 短路與 短路...