相信讀者們遇上網頁載入速度慢,可能感到不耐煩,嚴重的話甚至放棄造訪這個網站。美國電子商務龍頭亞馬遜曾統計,若是自家網頁載入每延遲 100 毫秒,其利潤恐將減少 1%。為了解決此一問題,麻省理工學院的 CASIL 團隊開發 Polaris 系統,可使網頁載入時間減少 34%。
美國麻省理工學院(MIT)電腦科學暨人工智慧實驗室(Computer Science and Artificial Intelligence Laboratory,CASIL)與哈佛大學的研究人員共同開發名為「北極星」(Polaris)的系統。Polaris 可使網頁載入時間減少 34%,其框架用以決定如何交疊正在下載的網頁物件(object),使整個頁面用較少的時間來載入,其研究論文已在上週的 USENIX 研討會正式發表。
當輸入網址,網頁瀏覽器實際上並不曉得整個網頁的內容,載入時必須先取得網頁的各個物件,例如 HTML 檔案、JavaScript 程式碼、圖片等,並評估如何將所取得的物件載入成為我們所看到的網頁。但由於物件之間具有相依性(dependencies),評估一個物件往往意味著需 要獲取更多物件,問題是瀏覽器無法看出所有的相依關係,下載物件則採保守排序,增加了電腦端與伺服器之間的往來次數,網頁的載入速度也就變慢。
發表論文的博士研究生 Ravi Netravali 表示,Polaris 自動追蹤所有物件之間的相互作用並編號,建立成相依圖(dependency graph)來使網頁的載入速度加快。
開啟這項專案的哈佛大學教授 James Mickens 打個比喻:旅人造訪一座城市時,可能想在回家前參觀更多城市,若事先給他所有城市的完整列表,他將能計畫出最快的旅行路線,否則他必須一個一個發現新的城 市,花更多時間走更遠路徑。對於瀏覽器而言,載入網頁的所有物件如同想參觀的所有城市,在出發前 Polaris 如同提供了城市清單,瀏覽器可規劃路徑,就能更快載入網頁。此外,Polaris 的技術特別適合更大、更複雜的網站。
包括 Google、亞馬遜等科技公司,都著手以資料壓縮改善網頁的載入速度。但 MIT 教授 Hari Balakrishnan 指出研究顯示,比起壓縮數據資料,網頁的載入速度與網路延遲更密切相關,降低網路延遲可顯著加速載入。
(本文由 TechNews 授權轉載)