天天看點

【白話科普】CDN & 遊戲加速器,兩者是一個原理嗎?

說起加速,大家可能就會聯想到“遊戲加速”之類的場景,而說到現在流行的雲服務加速,則離不開 CDN 這個詞。那麼 CDN 和遊戲加速器是同一種東西麼?從效果上看兩者都是為了“加速”,似乎是一樣的。但是,在本質上卻有差別。

以上圖舉例,假設我們需要從 A 地點到 B 地點取東西,那麼走直線肯定是最短距離。但如果 AB 之間的通路路面滿是巨大的障礙物,極其難走,通行時間為 4 小時。而C和AB之間的通路十分通暢,從 A 經過 C 再到 B 隻需要 2 小時,你會如何選擇呢?相信大家肯定會選擇走 C 去 B,畢竟雖然路遠了,但是時間更短。遊戲加速器就是讓大家通過 C 點,能夠更快速地到達 B。而 CDN 則是讓東西放置在 C 點,進而加倍縮短時間。

當然以上隻是一個簡單的舉例,遊戲加速器和 CDN 的具體運作原理我們下面細說。

遊戲加速器是針對個人使用者快速、安全連接配接伺服器的一種服務。它使用的是 VPN(虛拟專用網絡)技術,通過虛拟專用網絡将電信加速到網通,或将網通加速到電信等等,為玩家提供優質的網絡加速服務。

在沒有使用遊戲加速器的時候走的就是平常通道,登入遊戲加速器以後,玩家的網遊資料轉入遊戲加速器專屬傳輸網絡中,這個網絡是經過優化、隻傳網遊資料,進而在使用者和伺服器之間建立了“綠色通道”,保障了資料傳輸的優先性與穩定性,能夠有效解決遊戲下載下傳開啟時存在的延時高、登入難、易掉線等問題。

CDN (Content Delivery Network),即内容分發網絡。當使用者通路網站時,CDN 會根據用戶端的地區和營運商,将使用者配置設定到距離最近速度最快的節點伺服器,讓使用者以更快的速度擷取到所需内容。

CDN 的設計思路

避讓:盡可能避開網際網路上可能影響資料傳輸速度和穩定性的瓶頸和環節,使内容傳輸得更快、更穩定。

檢測:通過在網絡各處放置節點伺服器所構成的在現有的網際網路基礎上的一層智能虛拟網絡,CDN 系統能夠實時監測網絡流量和各節點的連接配接,負載狀況以及到使用者的距離和相應時間等綜合資訊。

分發:根據監測情況重新導向離使用者最近的服務節點上。

CDN 的工作過程

以上圖進行舉例,假如 www.abc.com 使用了又拍雲 CDN 服務。當他的使用者需要通路這個網站時,首先由使用者端發起通路請求,之後 Local DNS 會向上級 DNS 伺服器進行域名解析,解析 CNAME 位址。解析出 CNAME 位址後,網站會授權給 DNS 解析出的 CNAME 位址,并将這個位址傳回給 Local DNS。而這時,又拍雲智能排程系統會根據 LocaL DNS 請求的 CNAME 位址配置設定最優的使用者所在地區的營運商節點。這個節點 IP 會由 Local DNS 傳回給請求用戶端,而用戶端則通路這個最優節點。

如果是用戶端第一次通路,那麼節點可能沒有該網站内容的緩存。那麼節點會到網站源伺服器去請求資源,這個時間可能會相對較長。而如果節點已經有網站内容緩存,那則會直接将緩存内容傳回給使用者,讓使用者檢視到網站内容。

如果是遊戲内容,那麼當遊戲廠商使用了 CDN 以後,就可以将軟體緩存到遍布各地的 CDN 邊緣節點上,當使用者請求下載下傳時,會直接選擇就近最優的節點進行下載下傳,提供下載下傳的穩定性和速度。相比遊戲加速器隻是提供專用的一條帶寬來進行加速,CDN 還可以解決因使用者流量持續增長,下載下傳伺服器處理能力、伺服器出口寬帶壓力增加而影響玩家體驗的問題。

盡管 CDN 和遊戲加速器在使用者端體驗效果上看似乎是是一樣的,但是無論是在成本還是在分解源伺服器壓力等方面,二者的原理是完全不同的。如果你要問二者哪種更好,那需要考慮到使用者自身的需求和實際情況。

白話科普系列——網站靠什麼提升加載速度?

“網頁内容無法通路”可能是跨域錯誤!