您好,登錄后才能下訂單哦!
這篇文章給大家介紹CDN搭配OSS如何搭建動靜態(tài)分離的應(yīng)用架構(gòu),內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
傳統(tǒng)的網(wǎng)站產(chǎn)品應(yīng)用架構(gòu),所有資源部署在應(yīng)用服務(wù)器本地存儲或掛載的數(shù)據(jù)存儲區(qū),對于動靜態(tài)資源不作分離, 產(chǎn)品架構(gòu)如下圖所示:
該架構(gòu)存在諸多問題:
系統(tǒng)性能會隨著系統(tǒng)訪問量的增長而受到限制甚至遭遇瓶頸;
靜態(tài)資源訪問量巨大時,占用出口帶寬,影響動態(tài)請求響應(yīng);
用戶請求分散時,回源距離長,影響用戶體驗(yàn)(單純使用CDN仍然需要回源拉?。?/p>
該架構(gòu)充分利用到“OSS帶寬/流量成本低、獨(dú)立響應(yīng)、存儲空間無上限”的特點(diǎn),結(jié)合CDN分發(fā)網(wǎng)絡(luò),實(shí)現(xiàn)資源動靜分離,支持海量用戶訪問。
優(yōu)化后產(chǎn)品架構(gòu)如下圖所示:
靜態(tài)文件存儲量大,文件數(shù)量多,文件體積較大,服務(wù)器存儲空間不夠;
靜態(tài)文件訪問量大,占用帶寬負(fù)載或服務(wù)器負(fù)載,I/O問題導(dǎo)致用戶訪問卡頓;
用戶分布較為分散,分布在全國各地、各運(yùn)營商;
對文件下載速度要求較高,且并發(fā)下載量高。
對象存儲服務(wù)(OSS:Object Storage Service)是京東云自主研發(fā)的大規(guī)模分布式對象存儲服務(wù),面向企業(yè)和個人開發(fā)者提供高可用、低成本、強(qiáng)安全的云端存儲服務(wù)。您可以實(shí)現(xiàn)對數(shù)據(jù)的統(tǒng)一管理,滿足各類存儲需求。支持標(biāo)準(zhǔn)的 RESTfulAPI 接口,您只需按實(shí)際用量付費(fèi),無最低使用限制。支持流式寫入和文件寫入兩種方式。面對冷數(shù)據(jù)存儲的場景,對于那些訪問頻率比較低,同時對訪問速度要求不高的數(shù)據(jù),可以將數(shù)據(jù)以低頻訪問的方式進(jìn)行存儲,為您保存和備份資料提供了一個海量低價的空間。
京東云CDN(Content Delivery Network),基于京東優(yōu)質(zhì)網(wǎng)絡(luò)基礎(chǔ)設(shè)施和智能云計(jì)算技術(shù),向用戶提供低成本、高性能、可擴(kuò)展的互聯(lián)網(wǎng)內(nèi)容分發(fā)服務(wù)。利用廣泛的節(jié)點(diǎn)覆蓋和先進(jìn)的云調(diào)度、云存儲技術(shù),將海量內(nèi)容更快、更可靠地投遞給互聯(lián)網(wǎng)終端用戶,降低網(wǎng)站運(yùn)營成本,提升用戶互聯(lián)網(wǎng)應(yīng)用體驗(yàn)。京東云 CDN 的前身是服務(wù)于京東商城的自建 CDN 平臺,歷經(jīng)多年 618 和 11.11等大促業(yè)務(wù)活動考驗(yàn),京東云 600+ 節(jié)點(diǎn)廣泛覆蓋于全國各區(qū)域和運(yùn)營商,精選全網(wǎng)優(yōu)質(zhì)基礎(chǔ)設(shè)施,邊緣節(jié)點(diǎn)覆蓋全網(wǎng)、全地域,真正實(shí)現(xiàn)就近接流、就近推流。
將京東云的對象存儲和CDN服務(wù)搭配使用,使用京東自建的全網(wǎng)CDN加速節(jié)點(diǎn),為您提供上傳下載雙向加速,實(shí)現(xiàn)全網(wǎng)覆蓋、快速高效的內(nèi)容分發(fā)。
降低Web/應(yīng)用服務(wù)器負(fù)載,靜態(tài)資源響應(yīng)壓力轉(zhuǎn)移到CDN,避免性能影響;
費(fèi)用最低,OSS的存儲費(fèi)用遠(yuǎn)低于云主機(jī)磁盤費(fèi)用;
超大容量存儲空間,大帶寬上傳通道,無需擔(dān)心存儲空間上限;
降低流量費(fèi)用,正常訪問熱度情況下,相比直接訪問OSS,減少95%回源流量。
以一個常見的Web站點(diǎn)為例。www.abc.com是一個新聞門戶網(wǎng)站,有500GB的新聞圖片、新聞視頻、JS文件等靜態(tài)內(nèi)容,使用了LAMP架構(gòu),目前站點(diǎn)全套架構(gòu)部署在京東云上。隨著用戶業(yè)務(wù)發(fā)展,訪問量的不斷增長,不少用戶反映,訪問網(wǎng)站的速度越來越慢,圖片、視頻加載慢,卡頓率高,網(wǎng)站響應(yīng)慢??蛻艄こ處煱l(fā)現(xiàn)用戶上傳的圖片越來越多,業(yè)務(wù)高峰期,帶寬峰值很高,服務(wù)器I/O經(jīng)常被占滿。
對于以上案例我們可以利用以上介紹的OSS+CDN架構(gòu)對網(wǎng)站進(jìn)行優(yōu)化,實(shí)現(xiàn)動靜分離的產(chǎn)品架構(gòu),提升用戶訪問體驗(yàn),同時成本可控。
解決方案及步驟如下:
1、對網(wǎng)站應(yīng)用架構(gòu)進(jìn)行整理,區(qū)分動態(tài)程序部分和靜態(tài)部分到不同的目錄進(jìn)行管理,建立image、video、js目錄,分別放置所有網(wǎng)站圖片素材;
2、京東云控制臺進(jìn)入OSS產(chǎn)品,新建一個Bucket。根據(jù)云主機(jī)所在的區(qū)域選擇bucket所在區(qū)域,權(quán)限選擇“公共讀”,bucket名稱與云主機(jī)新建的目錄的名稱對應(yīng),如“abc-image-bucket”、“abc-video-bucket”和“abc-js-bucket”;
3、分別綁定域名image.abc.com、video.abc.com、js.abc.com并進(jìn)行CDN加速。
4、上傳文件:提供控制臺上傳和表單上傳兩種方式。
控制臺上傳:可以通過對象存儲控制臺上傳小于1GB 的文件。如您要上傳的文件大于1GB,請通過對象存儲 API或SDK的方式上傳。
表單上傳:表單上傳指用戶使用OSS API中的Post Object請求來完成文件的上傳,非常適合嵌入在HTML網(wǎng)頁中來上傳文件;
5、修改DNS調(diào)度,增加CNAME解析,將原本訪問源站的請求,調(diào)度到CDN加速域名,以后用戶訪問您的網(wǎng)站的靜態(tài)文件就全部通過OSS+CDN的方式訪問,不再占用您云主機(jī)的資源。
新聞門戶網(wǎng)站
應(yīng)用分發(fā)市場
在線音樂、在線K歌
視頻、短視頻(UGC/PGC)
電影院線
在線教育
關(guān)于CDN搭配OSS如何搭建動靜態(tài)分離的應(yīng)用架構(gòu)就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。