Decentraleyes - 讓瀏覽器使用電腦端 CDN 資源,加快網頁顯示速度及避免追蹤

Decentraleyes 是一款非常實用的瀏覽器套件,在火狐 Firefox 和 Chrome 上都能夠使用,功能是把一些常見的 CDN 資源預放到電腦端(比方說網頁常調用的 JavaScript libraries 中比較知名的 jQuery),當我們瀏覽網頁時就不需要到網站主機、CDN 去下載這些常見資源,從而加快網頁的顯示速度及避免被追蹤。

CDN 的作用

CDN 即內容傳遞網路(Content distribution network),詳情請參考 wiki 網頁,這邊簡單理解一下。一般站主架設網站時,為了節省主機資源以及提昇來自世界各地使用者的瀏覽速度,並不會希望瀏覽網頁的使用者所有資源都從它的主機下載(比方說我的主機在美國,亞洲的使用者連線就會相對緩慢),而是會使用大型 CDN 供應商所提供的分流。

大型 CDN 供應商像是 Google、Cloudflare、Incapsula 則是透過他們遍佈世界各地的主機,提供常見、通用的資源(像上面舉的 jQuery 以及 angular....等等)讓網站設計師引用,既加快網頁開啟速度也減少主機端的負擔,而供應商們則能夠過追蹤網路足跡來得到一些使用者資料,達到使用者、網站方、CDN 商三贏的營運方式。

Decentraleyes 的作用

Thomas Rientjes 的 Decentraleyes 套件則提供了另一個思路,既然這些「通用資源」幾乎是每個網站或多或少用都會用到,那何不直接從放一份在瀏覽器裡面呢?如此一來我們連透過 CDN 分流主機來下載都不必,能夠更快的顯示網頁,也避免了網路足跡被追蹤而更能保護隱私(其實隱私部份我不太在乎,主要還是網頁顯示更快啦!XD

套件資料

Decentraleyes 的作用上面講過了,下面是他目前支援的 CDN 和打包好的資源,注意看 CDN 後面三個分別是:百度、新浪和又拍雲,所以對相當部份的中國網站也是有效果的~

  1. 目前支援的傳遞網路: Google Hosted Libraries、Microsoft Ajax CDN、CDNJS (Cloudflare)、jQuery CDN (MaxCDN)、jsDelivr (MaxCDN)、Yandex CDN、Baidu CDN、Sina Public Resources 以及 UpYun Libraries。
  2. 內建打包好的資源: AngularJS、Backbone.js、Dojo、Ember.js、Ext Core、jQuery、jQuery UI、Modernizr、MooTools、Prototype、Scriptaculous、SWFObject、Underscore.js 以及 Web Font Loader 等。

使用方法

1、使用方法簡單,直接下載套件安裝即可。安裝後連到測試網頁,就可以看到一行綠色的「Decentraleyes is fully operational.」字樣,然後行有餘力也可以給作者的 Bitcoin 捐點錢。

Decentraleyes 從電腦端讀取資源測試頁面

2、預設行為中,如果有缺少的資源,套件還是會連到網站指定的位置去下載,以避免網頁顯示出現錯誤。但使用者也可以拒絕這個動作來保護自己隱私(下圖標籤 1),如果有特殊需求也可以把網站設為例外。(下圖標籤 2

Decentraleyes 設定頁面

相關事項

1、這套件當然可以跟一些常見的隱私保護套件如 uBlock Origin、uMatrix......等等一起用嗎?

事實上一起用效果更好。如果啟用 uBlock Origin 的「我是進階使用者」(Advanced mode)模式,需要透過自訂規則的方式來讓套件運作正常,一般使用者則不需要特別做什麼。

2、這些「常用資源」是否會佔很大空間?

其實這套件也就 5mb 多可以放心。

3、那為什麼總共這麼小的檔案會拖慢速度?

答案是因為每一個小資源都是一次請求可能一個請求都不到 1 kb),這些請求次數和偶爾的網路塞車才是網頁速度殺手。

You may also like...

Top