本篇內(nèi)容介紹了“怎么提升Web性能”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!
目前創(chuàng)新互聯(lián)已為成百上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)絡(luò)空間、網(wǎng)站托管、服務(wù)器租用、企業(yè)網(wǎng)站設(shè)計、北侖網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
為什么web性能如此重要?
真的非常重要!
響應(yīng)更快的網(wǎng)站會帶給用戶更好的體驗,理論上講,好的體驗等于好的用戶滿意度。更快,也意味著用戶在放棄之前,有希望更快的訪問到你的網(wǎng)站。放棄的原因有很多:頁面加載時間太長,用戶失去了興趣,瀏覽器崩潰等等。提高性能可以降低放棄率,會給網(wǎng)站了帶來顯著的效益。
運行時的性能是指web應(yīng)用程序運行時對于用戶輸入的響應(yīng)速度,比如點擊刪除圖片等。
Web性能影響因素
運行時的性能受很多因素影響:
從完成特定功能所采用的算法效率到優(yōu)化方法;
從解釋器和瀏覽器渲染引擎的優(yōu)化或不足到有效內(nèi)存管理和CPU使用率;
再到設(shè)計時間同步和異步操作之間的選擇,都會對性能產(chǎn)生影響。
運行時的性能是一個比較主觀的感覺。今天就從三個角度分享一下小編的性能優(yōu)化小技巧。
角度一:當(dāng)我們在瀏覽器的地址欄輸入一個URL,就開啟了一個新的網(wǎng)絡(luò)線程,DNS解析、TCP連接和HTTP請求和響應(yīng),不可避免地依賴網(wǎng)絡(luò)環(huán)境、受到網(wǎng)絡(luò)延遲、網(wǎng)絡(luò)不穩(wěn)定等因素影響。我們能做的只有盡可能減少網(wǎng)絡(luò)請求,以減少網(wǎng)絡(luò)線程產(chǎn)生的網(wǎng)絡(luò)消耗。
角度二:瀏覽器也有部分原因,主流瀏覽器有IE、Chrome、Safari、Firefox、Opera等,不同的瀏覽器的JS引擎性能不同,帶給用戶的體驗也不同,比如IE8及以下的內(nèi)核表現(xiàn)不好是眾所周知的。
角度三:除去網(wǎng)絡(luò)、瀏覽器等外圍因素,影響web性能的主要還是頁面本身。作為開發(fā)人員,性能優(yōu)化可以控制的部分就是頁面,包括頁面大小、頁面結(jié)構(gòu)、JS、CSS等等。
針對以上3點頁面加載過程所涉及到的因素,下面做簡單討論和優(yōu)化的辦法介紹~
性能優(yōu)化小技巧
1. 減少HTTP請求數(shù):
1)資源大小很重要,不僅僅關(guān)系到下載時間,還因為IPv4和IPv6協(xié)議規(guī)定一個IP包的***值為65535字節(jié)。一個IP包是一次請求,于是可以得到一個等式:
根據(jù)這個公式,我們可以控制資源盡可能小。可以采取使用gulp等自動化構(gòu)建工具進行自動合并JS文件、壓縮文件和圖片等手段。
2) 避免重定向:重定向說明需要客戶端采取進一步操作才能完成請求,請求時間就會延長。所以輸入URL時應(yīng)使用最完整的、最直接的地址,比如輸入www.baidu.com而不是baidu.com。
3) 使用緩存機制:主要有數(shù)據(jù)庫緩存、服務(wù)端緩存(反向代理和cdn緩存)、瀏覽器緩存。
2. 圖片懶加載
頁面圖片很多的,可以使用懶加載。只加載***屏的圖片,當(dāng)用戶滾動訪問后面的內(nèi)容時再加載相應(yīng)圖片。方法是先用一張極小的占位圖代替圖片,占位圖只下載一次,將原本圖片的src存儲在另一個屬性中,判斷當(dāng)圖片快進入可視區(qū)域就將路徑賦值給src并下載圖片進行展示。下面是簡單的例子:
3. 代碼優(yōu)化
1)頁面結(jié)構(gòu):CSS放在HTML內(nèi)容上部,JavaScript放在HTML內(nèi)容下部??梢允褂胮reload提前解析資源的DNS。由于瀏覽器是自上而下讀取內(nèi)容的,因此放置資源的位置會影響網(wǎng)站的訪問速度。比如,如果將script標(biāo)簽放在HTML內(nèi)容的前邊,瀏覽器就會先調(diào)用JavaScript解釋器對JS進行解析,完成之后才會渲染其余的HTML內(nèi)容,對用戶來說,能看到的是HTML的內(nèi)容,所以1) 這么做會導(dǎo)致頁面可用性的延遲。另外,CSS是對頁面節(jié)點進行修飾的,如果CSSOM未構(gòu)建之前就進行了布局,等到CSSOM構(gòu)建出來,如果CSS修改了節(jié)點的布局,就會發(fā)生重排,需要重新計算布局并繪制。
2) JavaScript優(yōu)化:比如減少對DOM的操作,減少重排和重繪,減少作用域鏈查找,慎用eval函數(shù)等等。JS代碼和(下面的)CSS的優(yōu)化主要要求前端開發(fā)人員對頁面渲染原理有清晰的了解、對基礎(chǔ)知識的掌握和良好的編程習(xí)慣。
3) CSS優(yōu)化:比如減少使用通配符‘*’,提取公用樣式增強可復(fù)用性,選擇器準(zhǔn)確可減少匹配時間,適度使用內(nèi)聯(lián)樣式。
“怎么提升Web性能”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!
分享文章:怎么提升Web性能
網(wǎng)頁鏈接:http://jinyejixie.com/article36/ggsgpg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、App設(shè)計、網(wǎng)站維護、營銷型網(wǎng)站建設(shè)、商城網(wǎng)站、網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)