11月1日到3日,由InfoQ 主辦的全球軟件開發(fā)大會(簡稱QCon)在上海光大會展中心國際大酒店隆重召開,這是一次技術(shù)開發(fā)者的頂級盛宴,又拍云作為國內(nèi)最大的針對企業(yè)級的云服務(wù)平臺,又拍云首席架構(gòu)師黃慧攀也受邀在會上分享《又拍云CDN技術(shù)架構(gòu)探秘》的主題。
分享過程中,黃慧攀著重介紹了又拍云的四大模塊--防盜鏈模塊,流量統(tǒng)計模塊,緩存調(diào)度模塊和防攻擊模塊。
防盜鏈模塊:防盜鏈模塊在Nginx啟動時并沒有任何防盜鏈策略,但會到數(shù)據(jù)中心獲取一份完整的客戶域名列表,但針對某個空間域名的具體防盜鏈策略是未獲取的,而是在某個URL請求訪問過來的時候觸發(fā)策略更新動作(該次請求只判斷是否是合法的空間域名,如果該URL的空間域名不在客戶列表上是不允許被訪問的),前往數(shù)據(jù)中心獲取該URL對應(yīng)空間域名的防盜鏈策略,并以自定好的數(shù)據(jù)結(jié)構(gòu)存儲于Nginx的共享內(nèi)存中,下次訪問該空間的所有URL都能檢索到對應(yīng)的防盜鏈策略。也就是說防盜鏈模塊是以按需被動觸發(fā)、主動更新的模式進行操作,本地的防盜鏈策略不會跟數(shù)據(jù)中心保證嚴(yán)格一致,通常會延遲幾分鐘。因防盜鏈模塊會每間隔幾分鐘前往數(shù)據(jù)中心獲取一份防盜鏈策略更新的客戶列表,如檢測到某個空間域名的防盜鏈策略有更新,將把本地共享內(nèi)存中的對應(yīng)記錄標(biāo)記為“需更新”,當(dāng)該空間再次有訪問請求進來的時候再主動觸發(fā)一個更新操作。
流量統(tǒng)計模塊:為降低數(shù)據(jù)統(tǒng)計的數(shù)據(jù)量,我們采用先在前端進行初步統(tǒng)計一個中間結(jié)果再交予數(shù)據(jù)中心進行大匯總的模式。每個URL訪問請求進入Nginx,將通過流量統(tǒng)計模塊并把該次請求的內(nèi)容大小(如:102400字節(jié))記錄到該請求對應(yīng)的空間域名記錄下,而不是直接就把這次請求的流量數(shù)字報到后端數(shù)據(jù)中心。在前端的流量統(tǒng)計模塊上暫時保留5分鐘的記錄,每隔5分鐘后進行每個空間域名的匯總統(tǒng)計,得到一個中間值再報入到數(shù)據(jù)中心進行全部節(jié)點的匯總統(tǒng)計。這樣一來,數(shù)據(jù)量從幾百萬條記錄降低到每5分鐘幾百條記錄,那么在數(shù)據(jù)中心的匯總統(tǒng)計就相對簡單很多。
緩存調(diào)度模塊:調(diào)度模塊在Nginx共享內(nèi)存中存有幾百萬條URL信息,這些信息是標(biāo)記某個URL應(yīng)該調(diào)度到SSD磁盤或者SAS磁盤。這數(shù)百萬條記錄主要通過Nginx內(nèi)部提供的RbTree 算法進行查找,百萬條記錄,最多只需20步就能定位到記錄。而我們在RbTree算法基礎(chǔ)上加入了LRU和MRU算法,以實現(xiàn)在固定范圍內(nèi)對這些URL進行排序操作,當(dāng)某些URL訪問密度明顯大于其他URL時,它將被調(diào)到SSD磁盤的Squid緩存進行讀寫。
雖然每個訪問請求都會經(jīng)過緩存調(diào)度模塊的判斷,但模塊的判斷速度非???,不會帶來任何延遲。可將熱門內(nèi)容(占訪問總量70%以上)都被調(diào)度到SSD磁盤上讀取,明顯提高系統(tǒng)整體性能。
防攻擊模塊:該模塊核心算法跟緩存調(diào)度模塊類似,都是要對大量的URL進行排序,對訪問量大的URL進行判斷。如果某個URL的訪問頻密度超過正常閾值,系統(tǒng)將對此URL的所有請求進行初步屏蔽處理(該次屏蔽以302重定向的方式進行保護,如果該次請求不是瀏覽器發(fā)起的正常訪問一般是不會識別302重定向信號,從而可屏蔽掉機器刷新類型的攻擊),如情況還繼續(xù)惡化,系統(tǒng)將禁止該URL的訪問請求,每隔5分鐘再次審核該URL的請求量是否恢復(fù)到正常閾值,自動判斷是否可以解除禁止。
黃慧攀還介紹:“雖然又拍云CDN系統(tǒng)的業(yè)務(wù)功能較傳統(tǒng)的CDN系統(tǒng)復(fù)雜,多了好幾個模塊運算,但對訪問請求的處理耗時并沒產(chǎn)生影響,可忽略。并且使用到SSD固態(tài)硬盤來提供熱門內(nèi)容的緩存服務(wù),整體的服務(wù)處理能力還大大增加(前后對比,使用SSD固態(tài)硬盤后單臺服務(wù)器的服務(wù)能力提升了1倍多)。
整體系統(tǒng)分為三層,可充分降低數(shù)據(jù)中心的訪問壓力。我們還在第二層中間結(jié)點部署有圖片處理服務(wù)器和音頻處理服務(wù)器的集群,把一部分?jǐn)?shù)據(jù)中心工作向外擴,進一步減輕壓力并能提高整體系統(tǒng)性能。
又拍云CDN系統(tǒng)上線正式投入服務(wù)到今已穩(wěn)定運行3年多,較我們早年部署的CDN系統(tǒng)有了很大提升。未來我們還將繼續(xù)完善UpCDN系統(tǒng),在自動化管理方面加大研發(fā)力度(這將涉及到服務(wù)器硬件、系統(tǒng)環(huán)境和軟件部署等方面,需制定軟硬件標(biāo)準(zhǔn)和完善的節(jié)點監(jiān)控系統(tǒng)),以實現(xiàn)一個智能化、自動維護的CDN系統(tǒng)?!?/p>
- 蜜度索驥:以跨模態(tài)檢索技術(shù)助力“企宣”向上生長
- 馬斯克腦機接口公司Neuralink再陷調(diào)查風(fēng)波:SEC‘重新啟動’調(diào)查,科技巨頭面臨新挑戰(zhàn)
- 工信部成立新標(biāo)準(zhǔn)化技術(shù)委員會,揭開人工智能標(biāo)準(zhǔn)化新篇章:未來已來,智標(biāo)引領(lǐng)未來發(fā)展
- 深圳龍崗粵科人工智能創(chuàng)投基金成立:10億大手筆揭開人工智能新篇章!
- 極米科技子公司喜獲汽車主機廠開發(fā)定點,嶄新篇章開啟,未來市場潛力無限!
- 未來之源:清潔氫引領(lǐng)全球電力行業(yè)綠色轉(zhuǎn)型至2035年
- 溫寧克接棒:ASML前CEO出任喜力新篇章監(jiān)事會主席,釀造啤酒業(yè)的未來新視角
- 國芯科技在汽車電子MCU領(lǐng)域掀起芯片革命:系列化產(chǎn)品引領(lǐng)創(chuàng)新潮流
- 生益科技:全球第二,引領(lǐng)柔性電子產(chǎn)業(yè)的新篇章
- 馬斯克宣布SpaceX總部遷至得州“星際基地市”:揭秘火星計劃新篇章,創(chuàng)新之翼飛向未來!
- 科創(chuàng)板收盤:科創(chuàng)50指數(shù)跌破1000點,存儲芯片板塊逆勢領(lǐng)漲,市場暗藏新機遇!
免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負(fù)任何法律責(zé)任。任何單位或個人認(rèn)為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應(yīng)及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關(guān)文章源頭核實,溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。