誰可以從使用 CDN 中受益?任何擁有可能同時被多個用戶請求的網站或移動應用程序的人都可以從 CDN 中受益。它們對于用戶遍布全球的大型復雜網站以及具有大量動態內容的網站或移動應用程序特別有用。CDN 可以為您的網站提供的一些好處包括:
- Web 和移動用戶的加載時間更快
- 在交通繁忙時快速擴展
- 最大限度地降低源點流量高峰的風險,確保站點穩定性
- 由于流量卸載(減少源負載)而降低基礎設施成本
- 更好的網站性能
CDN 還為不同類型的企業和組織提供了許多特定的好處,例如:
- 電子商務:CDN 可以幫助電子商務網站快速有效地交付內容,即使在黑色星期五和假期等交通繁忙時期也是如此。
- 政府:通過使用 CDN,內容豐富的大型網站可以更快、更高效地向市民提供重要信息。
- 財務:CDN 為銀行機構提供了快速、安全和可靠的基礎設施,以向消費者和分析師提供敏感數據。
- 媒體/出版:媒體網站需要提供及時和最新的信息,CDN 可以幫助媒體公司在故事實時展開時更新標題和新聞主頁,并在數據過時時刪除數據。
- 移動應用程序:CDN 為移動應用程序提供基于位置的動態內容,從而減少加載時間并提高響應能力。
- 技術和SaaS:CDN 可幫助技術網站每天向 Web 用戶提供數十億個請求,而不會降低性能。
現代 CDN 與傳統 CDN
CDN 自 1990 年代后期就已存在,但傳統 CDN 通常落后于硬件和技術的進步,并且無法提供與現代 CDN 相同的優勢。通常,這些遺留 CDN 不是內置的敏捷軟件環境,在這種環境中,公司不斷迭代產品、整合客戶反饋并改進產品。這些 CDN 已經存在了五年或更長時間,沒有太大變化,并且現代 CDN 已經改進了嚴重的低效率:
僅緩存靜態內容
傳統 CDN 只能緩存靜態內容,這相當簡單,因為它不會根據用戶輸入而改變。靜態內容的一些示例包括圖像、視頻、CSS 和 Javascript。另一方面,動態內容包括需要服務器邏輯的頻繁更改的內容——例如,信用卡交易或電子商務網站上個人購物車的更新。動態內容通常被歸類為“不可緩存”,因為由于數據的敏感性,它必須通過源服務器。
這在某種程度上是正確的。有很大一部分動態內容可以緩存——不包括個人數據但仍然不可預測且經常更改的內容。這種動態內容是事件驅動的——基于人或機器的動作。想想股票價格、用戶對文章的評論、需要立即更新的新聞標題或體育比分。大多數 CDN 將此內容視為“不可緩存”,就像對待其他動態內容一樣,但它實際上可以被緩存。
邊緣有限的存儲空間
傳統 CDN 只能為客戶提供有限的邊緣空間,因為它們主要依賴旋轉硬盤驅動器。這意味著他們必須優先考慮哪些內容緩存在邊緣,哪些內容緩存在更遠的地方。這通常意味著較大的網站優先于較小的網站。或者,現代 CDN 建立在大型固態驅動器 (SSD) 網絡上,可以在邊緣緩存所有內容,因此所有客戶都能從中受益。
客戶提示的代理
現代 CDN 的另一個主要好處是反向代理。使用傳統的 CDN,客戶需要在第一時間將他們的內容直接上傳到緩存服務器。現代 CDN 根據請求從客戶的源服務器獲取和存儲內容,因此無需預先加載緩存服務器。使用傳統 CDN 的網站通常被迫在源服務器上保留動態內容,這可能會導致流量高峰和性能下降,從而違背了擁有 CDN 的初衷。
舊 CDN 的安全注意事項
CDN 已經存在很長時間了,但它們的構建方式不盡相同。雖然邊緣云平臺通過將事物移動到邊緣來超越傳統的內容交付網絡,但存在更多根本差異;CDN 制定自己的關于如何提供網絡流量的規則并不少見,因為在定義 HTTP 時 CDN 并不存在。為了改善這一點,我們正在與其他平臺合作,以標準化 CDN 的基本協議處理。
不久前,安全研究人員注意到了一段時間以來一直在關注內容交付網絡 CDN 工程師的問題;可以將相互競爭的 CDN 指向彼此以將它們關閉。來自內容交付網絡中轉發循環攻擊的摘要:
惡意客戶可以通過在一個 CDN 內或跨多個 CDN 創建轉發循環來攻擊內容交付網絡 (CDN) 的可用性。這種轉發循環會導致重復甚至無限期地處理一個請求,從而導致不希望的資源消耗和潛在的拒絕服務攻擊。為了評估此類轉發循環攻擊的實用性,我們檢查了 16 個流行的 CDN 提供商,發現它們都容易受到某種形式的此類攻擊。
由于許多 CDN 的規模龐大——全球每個 CDN 的鏈接容量為每秒 TB——這可能是一個非常可怕的問題。無論是故意攻擊還是意外配置錯誤,都可能會因相關 CDN 而導致互聯網的大部分癱瘓。事實上,最近與我討論這個問題的一位 CDN 工程師說,這是“讓他徹夜難眠”的問題之一。
許多CDN的邊緣云平臺已經具備環路保護機制,通常通過使用標頭來識別已經看到的請求。問題是這些解決方案彼此之間沒有協調,因此一個 CDN 可能被配置為有意或無意地刪除另一個 CDN 的循環檢測標頭。正確配置的 CDN 還可以幫助保護網站免受一些常見的惡意攻擊,例如分布式拒絕服務 (DDOS) 攻擊。
新興的先進 CDN 技術
我們想要更好的東西,所以我們開始與其他 CDN 以及內容平臺的同事交談。結果是HTTP 工作組中針對CDN-Loop 請求標頭的一個小規范,兩周前互聯網工程指導組(IESG)批準將其作為標準軌道 RFC 發布。這是一個非常簡單的機制。實施 CDN 需要在他們發出的每個請求中添加它,并保護它免受意外(或不太意外)的修改,以便他們可以更可靠地檢測和緩解此類循環——即使循環涉及多個 CDN。我們對向前邁出的這一小步感到非常高興,因為這是改變的標志;從早期開始,CDN 之間就此類問題沒有進行太多協調,更不用說為我們的客戶提供一致的體驗了。因此,雖然規模很小,但它是重要的一步,因為它標志著一個愿意合作的行業。