影響網站速度的因素與優化策略-客觀條件篇
前言
圖片引用來源:https://www.nps.gov/
要討論網站速度這個題目,最終只有一個目標,那就是如何快速的把資料傳遞到瀏覽器另一頭的使用者,說起來好像挺單純,但是要縮短資料流的整體速度,和那些號稱能兩日到貨的物流業者一樣,背後所付出的努力是外界難以想像的。
讓另一頭的用戶感覺到快速,能影響的因素實在太多了,在Goolge搜尋框鍵入網站速度,您會找到幾十萬筆相關的文獻和報告,其中光是檢測工具就有一堆,更遑論各種號稱能加速網站讀取速度的第三方服務,種種專業術語真是讓人眼花撩亂。
這裡我們大致歸納為網站/電商經營者能掌握的客觀條件,與平台本身的主觀因素兩個層面,希望透過舉例類比的方式,在本篇的文章當中,先建立各層面的概念,讓您對系統平台之外的客觀層面有基礎的認識,並且作為評估優化策略的參考。
下一篇,再以電商開發商的角度,說明Magento作為電商管理系統,主觀層面上如何透過後台設定建立速度優勢,而我們又將如何為客戶的電商系統進行健檢。
影響網站速度的各個層面
從網站伺服器把網頁送到你電腦上的瀏覽器,這中間的過程,和一台車從甲地到達乙地,而後將車上的貨物卸載的過程幾乎是相同的概念;影響速度的因素,除了網站/電商系統本身的主觀層面以外,經營者團隊也主導了客觀層面的條件,我們可以透過上圖,歸納為四個部分:
- 客觀條件網站/電商經營團隊自身可掌握
就像駕駛決定載貨量與空間運用,經營團隊可以針對網站內容進行優化,藉以減輕傳輸的負荷量。 - 客觀條件硬體設備與網路結構上的提升
好比是物流路線影響派送的整體時間,當我們談到資料流,傳遞網絡的結構與應用的技術類型,對於數位傳輸有著顯著的影響,不管公路還是網路,你都不希望遇到塞車的情況。 - 主觀因素系統與伺服器端設定
平台可以視為傳輸資料的核心載具,系統的管理後台通常有許多參數可調整,本節將以Magento為例具體說明。 - 主觀因素開發設計的優化技巧
開發設計的過程自然有不少學問在裡面,假若您是電商業者,多了解一些總是好事,藉此也能進一步理解Magento的高擴展與靈活性,為何能在眾多電商系統中處於領先地位。
網站經營團隊可以掌握的
延續上述的例子,本節提出的項目可以類比為車上裝載的貨物,對於整台車到達目的地花費的時間,甚至於油耗都有相當的影響;畢竟開發者可以為您把車子準備好,但車子裝載的內容,可是關係到後續運輸成本,還是得靠經營者本身隨時留意的。
-
第三方串接的性價評估
您或許會想在網站前台導入線上客服的窗口,又或許透過Facebook pixel / Google Analytics這類的追蹤工具,評估流量與行銷成效,甚至SSL也需要透過第三方中立的機構取得認證;不論動機為何,在網站前台動態載入第三方服務的模式已經是常態,對於經營者而言要知道的是
「這些串接或多或少都會對於速度帶來一定的影響,而且,絕對不是變快的那種。」
優化策略:導入這些第三方服務往往是行銷面的需求,所幸,知名度較高的機構所提供的工具,往往對於速度的影響十分輕微,假若您的網站有其他的特殊需求,做為經營者就必須評估速度與串接效益之間的權衡了。
-
優化圖片檔案的儲存格式
當一個頁面呈現在瀏覽器中,檔案重量最大的,往往不是HTML或是程式語法,而是大量的圖片,而一張圖片從伺服器取出後,送到瀏覽器另一頭的消費者眼中,其實中間有不少學問;我們暫且把平台開發商可以優化的技巧與工法留在下篇再提,但對於網站經營者來說,直接對於圖片的瘦身,是最有效而直接的方式。
優化策略:未經瘦身處理的圖片檔案,相比於優化後的,甚至可以減少一半的重量,更多關於圖片優化的細節,我們強烈建議您參考歐斯瑞的另一篇貼文:網頁最佳化圖片。
-
減少使用過重的字型檔案
字型是一個設計面的重要因素,但要知道的是,字型檔案若不存在於瀏覽器端的作業系統中,在處理上是當成靜態資源進行下載的;所幸透過Google大神和社群成員的努力,現已提供許多雲端字型可供免費使用,設計精美且檔案輕便,但提到中文字型,仍是無法避免的大重量,回想一下中文打字機與英文打字機的體積便可很容易的理解箇中原因。
優化策略:中文語系的網站使用者,當然能感受字型對於頁面風格所造成的影響,但依我們的專案經驗來說,實務上仍以速度為重,大多情況下都會避免在網站中,使用大量的中文字型檔案。
其他的加值服務
資料流透過甚麼樣的網絡結構派送?動態資料如何生成?這裡提出一些關於規格面的因素,對於網站經營業來說,通常都是花錢就能感受到成效的,這裡提供最基礎的認識,在砸錢之前,還請審慎評估CP值。
-
擴充伺服器與頻寬規格
一個多伺服器架構的電商系統,伺服器通常由四種主要的任務所組成:
- 網頁伺服器-用以處理Http Request與各種動態生成的內容
- 資料庫伺服器-用以儲存大量的動態資料
- 備援伺服器-作為備胎使用,除了儲存定期備分的資料之外,在某些系統中,也同時作為儲存影音的媒體伺服器
- 負載平衡器-用於平衡各伺服器的負載與資料流量,在某些系統中甚至可以動態調整
依照不同的伺服器任務,有的會強調CPU運算能力,有些則由於大量I/O的需求,需要大量的快取記憶體;而頻寬則直接影響到這條資料流是否出現塞車的狀況。
優化策略:硬體規格自然是依照實際的業務需求進行調整,目前市面上的託管服務,通常都能在極短的時間內,實現規格的調整;所以對業者來說,更需要評估的是,網站是否會出現偶發性的爆炸性流量,與相對應的方案。
-
啟用CDN服務
講個大白話,CDN服務是為資料傳遞準備另一條捷徑,直接縮短運送路線,節省時間,尤其對於處理跨境需求的網站,得受理來自世界各地的客戶,這樣的服務更顯重要;在資料傳遞的過程中減少交換機的數量,並透過快取機制大量地縮短傳輸的時間。
優化策略:評估自身網站使用族群的地理特性,並試算投入成本與加速成果之間的CP值。如果想進一步了解CDN的運作,請參考歐斯瑞的另一篇貼文:CDN對我的網路店頭有甚麼幫助?
-
資料庫存取優化
網站上有許多動態生成的資料,會員個資、訂單細節、甚至一篇貼文,可以說一個電商網站中幾乎八成的資料都是動態生成的;想像一下,這台貨車每次運送都得重新備貨,當然對於最終送達貨物的時間影響甚鉅。暫且撇開程式面的因素,當前有許多伺服器託管的龍頭業者推出存取優化的服務,各有其技術優勢,有的透過優化快取機制,有的將資料分散儲存以降低系統整體的乘載量,有的甚至從硬體下手,直接把記憶體取代硬碟作為儲存設備,全面性地減少輸出入的花費時間。
優化策略:由專業的開發團隊協助評估資料庫存取的實際情形,應用最合適的優化技術與品牌。
結語
正所謂的老馬方識途,這也是為什麼,您需要專業的電商夥伴為您的系統進行整體健檢,除了平台本身開發設計上的優化之外,其實許多系統外的客觀因素,仍需老司機為您的企業組織評估最佳的方案選擇。
延伸閱讀(參考資料)
- [歐斯瑞官網] -網頁最佳化圖片
- [歐斯瑞官網]-CDN對我的網路店頭有甚麼幫助?
我要留言