javascript
JavaScript性能优化:度量、监控与可视化1
HTTP事務所需要的步驟:
接下來,瀏覽器與遠程Web服務器通過TCP三次握手協商來建立一個TCP/IP連接,類似對講機的Over(完畢) Roger(明白)
TCP/IP模型
TCP即傳輸控制協議(Transmission Con-trol Protocol)
一旦TCP/IP連接建立,瀏覽器會通過該連接向遠程服務器發送HTTP的GET請求
遠程服務器找到資源并使用HTTP響應返回該資源,常用的有:
??200表示來自服務器的成功響應;??404意味著服務器沒有找到請求的資源;?500表示執行請求時發生了錯誤。
IPv4和IPv6協議規定一個IP包的最大值為65535字節,將你的總頁面大小轉化為字節數,再除以最大IP包的字節值得到服務器的響應次數
頁面中的每一項資源——每一個圖片、外部JavaScript文件和CSS文件,都需要從服務器到本地走個來回。每項資源的請求都會開啟一個新的線程和一個新流程(flow)實例,而每一個實例又會產生DNS查詢、TCP連接、HTTP請求和響應
1.2 解析與渲染
瀏覽器解析和呈現Web頁面架構(下圖) 瀏覽器架構處理UI(用戶界面)的代碼(包括了地址欄和回退(history)按鈕),用于解析和繪制頁面中所有對象的渲染引擎,解釋Javascript的JavaScript引擎,以及一個處理HTTP請求的網絡層
瀏覽器是自上而下讀取內容的,因此放置資源的位置會影響網站的訪問速度,如果將JavaScript標簽放在HTML內容的前邊,瀏覽器就會先調用JavaScript解釋器對JavaScript進行解析,完成之后才會渲染其余的HTML內容
1.2.1 渲染引擎
瀏覽器架構可以劃分為多個模塊,一直以來,瀏覽器制造商也是通過組合模塊來構造瀏覽器的
Chrome和Safari使用Webkit渲染引擎http://www.webkit.org/
1.2.2 JavaScript引擎
JavaScript解釋器也應用了模塊化這一概念,也可以嵌入到其他工具中
Firefox的SpiderMonkey
Chrome的V8
1.3 運行時性能
所謂運行時(runtime)是指應用程序執行或運行的時長。運行時性能是指應用程序運行時對用戶輸入的響應速度(比如保存特性或訪問DOM中的元素時)
第2章 測量和影響性能的工具與技術
2.1 Firebug
2.2 YSlow
若要更深入地分析網頁性能,可以使用YS-low,可以移植到大多數瀏覽器上http://yslow.org/,Google曾經開發了Page Speed類似于YSlow的產品
2.3 WebPagetest
http://www.webpagetest.org/
WebPagetest是一款Web應用程序,它將一個URL以及一系列配置參數作為輸入,并對那個URL運行性能測試。WebPagetest可配置參數的數量非常多,范圍非常廣
2.4 縮減
需要縮減JavaScript
2.4.1 Minify
http://code.google.com/p/minify/
Minify,讀入JavaScript文件的URL。Minify剔除掉不必要的字符,并設置響應頭(response header)為gzip編碼格式,返回結果給script標簽,并將結果加載到瀏覽器,要使用Minify,只需要從http://code.google.com/p/minify/網站上將它下載下來,將其解壓縮至/min文件夾并放到Web網站根目錄下,然后到/min/builder/目錄下打開Minify控制面板。在控制面板中,可以添加你想要縮減的JavaScript文件,頁面生成可鏈接到JavaScript文件縮減后的腳本標簽
2.4.2 YUI Compressor
另一個用于縮減的工具是Yahoo的YUI Com-pressor,可以在這里找到它:http://yuili-brary.com/download/yuicompressor/
2.4.3 Closure Compiler?https://developers.google.com/closure/com-piler/?它不僅縮減了JavaScript,而且通過重寫進一步壓縮了JavaScript?優化策略——它將函數展開,重寫變量名,刪除從不會調用的函數(只要它能判斷)
2.5 R入門
http://cran.r-project.org/?使用R進行數據可視化準
以后再填這個坑
轉載于:https://www.cnblogs.com/sdgjytu/p/3934698.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的JavaScript性能优化:度量、监控与可视化1的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 腾达 I4 无线路由器快速设置路由器上网
- 下一篇: gradle idea java ssm