干貨 | CDN搭配OSS最佳實踐 ——搭建動靜態分離的應用架構


一、傳統架構及痛點

傳統的網站產品應用架構,所有資源部署在應用服務器本地存儲或掛載的數據存儲區,對於動靜態資源不作分離, 產品架構如下圖所示:

該架構存在諸多問題:

● 系統性能會隨着系統訪問量的增長而受到限制甚至遭遇瓶頸;

● 靜態資源訪問量巨大時,占用出口帶寬,影響動態請求響應;

● 用戶請求分散時,回源距離長,影響用戶體驗(單純使用CDN仍然需要回源拉取)。

二、CDN+OSS架構方案:

該架構充分利用到“OSS帶寬/流量成本低、獨立響應、存儲空間無上限”的特點,結合CDN分發網絡,實現資源動靜分離,支持海量用戶訪問。

優化后產品架構如下圖所示:

1、適用場景

● 靜態文件存儲量大,文件數量多,文件體積較大,服務器存儲空間不夠;

● 靜態文件訪問量大,占用帶寬負載或服務器負載,I/O問題導致用戶訪問卡頓;

● 用戶分布較為分散,分布在全國各地、各運營商;

● 對文件下載速度要求較高,且並發下載量高。

2、架構描述

**涉及產品介紹: **

對象存儲服務(OSS:****Object Storage Service)是京東雲自主研發的大規模分布式對象存儲服務,面向企業和個人開發者提供高可用、低成本、強安全的雲端存儲服務。您可以實現對數據的統一管理,滿足各類存儲需求。支持標准的 RESTfulAPI 接口,您只需按實際用量付費,無最低使用限制。支持流式寫入和文件寫入兩種方式。面對冷數據存儲的場景,對於那些訪問頻率比較低,同時對訪問速度要求不高的數據,可以將數據以低頻訪問的方式進行存儲,為您保存和備份資料提供了一個海量低價的空間。

京東雲CDN(Content Delivery Network),基於京東優質網絡基礎設施和智能雲計算技術,向用戶提供低成本、高性能、可擴展的互聯網內容分發服務。利用廣泛的節點覆蓋和先進的雲調度、雲存儲技術,將海量內容更快、更可靠地投遞給互聯網終端用戶,降低網站運營成本,提升用戶互聯網應用體驗。京東雲 CDN 的前身是服務於京東商城的自建 CDN 平台,歷經多年 618 和 11.11等大促業務活動考驗,京東雲 600+ 節點廣泛覆蓋於全國各區域和運營商,精選全網優質基礎設施,邊緣節點覆蓋全網、全地域,真正實現就近接流、就近推流。

將京東雲的對象存儲和CDN服務搭配使用,使用京東自建的全網CDN加速節點,為您提供上傳下載雙向加速,實現全網覆蓋、快速高效的內容分發。

**架構優勢: **

降低Web/應用服務器負載,靜態資源響應壓力轉移到CDN,避免性能影響;

費用最低,OSS的存儲費用遠低於雲主機磁盤費用;

超大容量存儲空間,大帶寬上傳通道,無需擔心存儲空間上限;

降低流量費用,正常訪問熱度情況下,相比直接訪問OSS,減少95%回源流量。

三、實際案例

以一個常見的Web站點為例。www.abc.com是一個新聞門戶網站,有500GB的新聞圖片、新聞視頻、JS文件等靜態內容,使用了LAMP架構,目前站點全套架構部署在京東雲上。隨着用戶業務發展,訪問量的不斷增長,不少用戶反映,訪問網站的速度越來越慢,圖片、視頻加載慢,卡頓率高,網站響應慢。客戶工程師發現用戶上傳的圖片越來越多,業務高峰期,帶寬峰值很高,服務器I/O經常被占滿。

對於以上案例我們可以利用以上介紹的OSS+CDN架構對網站進行優化,實現動靜分離的產品架構,提升用戶訪問體驗,同時成本可控。

解決方案及步驟如下:

1、對網站應用架構進行整理,區分動態程序部分和靜態部分到不同的目錄進行管理,建立image、video、js目錄,分別放置所有網站圖片素材;

2、京東雲控制台進入OSS產品,新建一個Bucket。根據雲主機所在的區域選擇bucket所在區域,權限選擇“公共讀”,bucket名稱與雲主機新建的目錄的名稱對應,如“abc-image-bucket”、“abc-video-bucket”和“abc-js-bucket”;

3、分別綁定域名image.abc.com、video.abc.com、js.abc.com並進行CDN加速。

4、上傳文件:提供控制台上傳和表單上傳兩種方式。

控制台上傳:可以通過對象存儲控制台上傳小於1GB 的文件。如您要上傳的文件大於1GB,請通過對象存儲 API或SDK的方式上傳。

表單上傳:表單上傳指用戶使用OSS API中的Post Object請求來完成文件的上傳,非常適合嵌入在HTML網頁中來上傳文件;

5、修改DNS調度,增加CNAME解析,將原本訪問源站的請求,調度到CDN加速域名,以后用戶訪問您的網站的靜態文件就全部通過OSS+CDN的方式訪問,不再占用您雲主機的資源。

四、典型應用場景

● 新聞門戶網站

● 應用分發市場

● 在線音樂、在線K歌

● 視頻、短視頻(UGC/PGC)

● 電影院線

● 在線教育

歡迎點擊“鏈接”了解更多精彩內容

閱讀原文


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM