書:web 效能 權威指南 著ilya grigorik
本人旨在自學web效能方面,主要是也看了上面那本書,本人是程式猿一枚看此書只是把重點記錄下來,到時候再細研究,
大家一起學習。
一、網路部分
1、延遲與頻寬
2、tcp
調整調整tcp初始擁塞視窗大小為10;
禁用空閒後的慢啟動;
確保啟動視窗縮放;
減少傳輸冗餘資料;
壓縮要傳輸的資料;
把伺服器放到離使用者近的地方;
盡可能重用已經建立的tcp連線。
3、udp
與tcp不同的協議,該協議主要是傳輸速度快,該協議省略了連線狀態、握手、重發、重組、重排、擁塞控制、擁塞預防、流量控制、錯誤檢測等。
說了這麼多,就是可以理解,只有源位址、目標位址、驗證串碼和元資料。
因此它簡單又快,但是就沒有相應的功能。
建議在區域網中使用,或是需要針對沒有的功能再開發,具體咋弄就不知道,到時候再研究。、
4、tls傳輸層安全
還有ssl等都是加密驗證、然後再解密取資料,這中間就多了很多互動過程,也是影響效能乙個因素。
效能檢查清單
4.1 tls庫公升級到最新版本,並在此基礎構建伺服器;
4.2 ssl2.0 會話快取預設是關閉的,啟用並配置快取大小及會話超時時間;
4.3在接近使用者的地方完成tls會話,減少往返的延遲;
4.4配置tls記錄的大小,使其恰好能封裝在乙個tcp段中;
4.5 確保證書鏈不會超過擁塞視窗的大小;比如,證書鏈的長度是5k,擁塞視窗大小是60k就沒有問題,如果證書鏈是100k的話,需要多一次往返;
4.6從信任鏈中去掉不必要的證書,減少鏈條層次;無用的證書鏈會加大客戶端和伺服器的驗證時間;
4.7禁用伺服器tls的壓縮功能,tls壓縮會暴漏嚴重的安全漏洞,而且一般資料都是已經壓縮過的,類似於zip壓縮後再壓縮提公升的不明顯;
4.8啟用伺服器對sni的支援;
4.10追加對http嚴格傳輸安全首部。
......中間扒拉一堆流動網路解釋,已經完全超出我的理解。過。
10、web效能要點
延遲、頻寬、計算機效能,這些對於web效能確實有一定的影響,但是相對而言不是主要因素,忽略。
10.1針對瀏覽器優化的建議
10.1.1基於文件的優化,盡量先載入頁面,先保證互動產生;
10.1.3資源欲取和有限次序
10.1.4dns預解析
10.1.5tcp欲連線,就是根據10.1.2的需求,將tcp連線欲開啟;
10.1.6頁面欲渲染某些瀏覽器,在10.1.2中,在隱藏的標籤頁中預先渲染整個頁面。
11.0網路優化
11.0.2減少dns查詢
11.0.3減少http請求
11.0.4使用cdn,離使用者近的地方
11.0.5新增expires首部並配置etag標籤
11.0.6gzip資源,所有文字資源都應該使用gzip壓縮
11.0.7避免http重定向,尤其是乙個完全不同的網域名稱會更耗時間
11.1持久化連線
假設頁面只有乙個html乙個css檔案,如果不使用持久化連線的話,就需要載入html時,客戶端和伺服器做乙個tcp連線的三次握手,css做一次,然後再傳輸資料。
如果有tcp連線,就會節省一套握手操作,節約的額時間(n-1)*每次tcp連線的三次握手時間,這種規模在大型**上相當的明顯。
11.2http管道
11.3使用tcp多個連線
http1.x不支援「多路復用」,這個是啥意思?瀏覽器通過並行開啟多個tcp連線,最多6個。
11.4網域名稱分割槽shar1.example.com shar2.example.com
原理類似於集群,假如乙個頁面需要載入多個資源,這些資源都指定到乙個機器方面,還是將資源分散到若干的伺服器上同時載入快,很顯然吧,但是肯定會有個臨界點。
簡單自學web前端 切片
我乙個大三學生,暫時在一家公司內實習。主要工作是先在虛擬機上安裝linux搭建oracle資料庫,然後用主機的公司開發的乙個金融管理軟體oracle連線資料庫,對此金融軟體進行開發,並根據客戶需求不斷的完善。會用到c c 還要讀懂一些公司的老 delphi 都不是我喜歡或者擅長的內容。每天工作很累,...
web應用安全自學指南
b站搜sec875 參考資料 參考資料 github安全類主題 參考資料 burpsuite工具開發公司出品的教學 紅盟抖音學習 931496577 我們想象乙個檔案,在網路上是直接整個的發,還是切分為幾組的發好一點呢?當然是將它們分割好,按照一定的順序和序列和佇列這些類似的詞語來傳送比較好啦。序列...
web效能改善
一直以來,很多人有著這樣的認識,web的效能總是比cs的系統來得差。實際上,這樣的認識並不正確。以下就來談談幾個web中的效能改善,改善之後,實際上,效能也是ganggang的。1 批量更新技法。批量的去進行更新,而不是1個表1件,迴圈的進行更新。比如,應該批量的檢查運算之後,對a表進行多條的批量更...