靜態資源放置于獨立域名之下的好處

獨立域名指的是一級域名而不是二級或三級域名
大型網站的靜態資源都是放在獨立的域名之下的。

    1. 瀏覽器的很多機制對網站的訪問速度有很大的影響(例如瀏覽器對靜態資源的緩存機制),此外瀏覽器為提升頁面顯示效率,支持并發獲取資源。瀏覽器對并發請求的數目限制是針對域名的,即針對同一域名(包括二級域名)在同一時間支持的并發請求數量的限制。如果請求數目超出限制,則會阻塞。因此,網站中對一些靜態資源,使用不同的一級域名,可以提升瀏覽器并行請求的數目,加速界面資源的獲取速度
    1. 網絡請求時cookie傳輸
      當靜態資源與主服務在同一域名下(根據業務需要,主服務請求時需要傳遞cookie信息),每次靜態資源的請求,都會發送同域名下的cookie。而對于靜態資源,服務器無需對cookie進行任何處理,它們只是在毫無意義的消耗帶寬。
      假設網站cookie信息有1 KB、網站首頁共150個資源時,用戶在請求過程中需要發送150 KB的cookie信息,在512 Kbps的常見上行帶寬下,需要長達3秒左右才能全部發送完畢。很多情況下cookie的path是在整個一級域名下可用的,如果你把靜態資源設置成二級域名,那么它也避免不了cookie。例如如果給 http://126.com 設置了cookie,那么會感染所有子域名, 請求 http://www.126.com/logo.gif或者http://image.126.com/logo.gif 時便會帶上討厭的cookie。
      所以對于靜態資源使用單獨的域名,并設置為無cookie,以減少請求大小,提高網頁性能。啟用新的一級域名,每次請求瀏覽器不會攜帶cookie。這對于cookie內容比較大,并且流量大的網站會省去不少寬帶費用
    1. 方便分流或緩存
      動靜分離。靜態資源與動態內容分離,有利于部署于CDN。靜態資源獨立部署,為全局產品服務。方便復用,放在一個服務器上的文件可以共其他服務器上的產品使用。 比如taobao.com和tmll.com都會用到tbcdn.cn上的靜態資源,這些資源不必從屬于某個產品。
      這樣同時也有利于最大化利用客戶端緩存。比如訪問taobao.com,緩存了tbcdn.cn上的某個js文件,之后再訪問tmll.com時,也用到此js文件,不必再從tbcdn.cn上下載,直接用客戶端緩存即可。
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容