如果企業(yè)希望優(yōu)化網(wǎng)絡(luò)性能和終端用戶的體驗,應(yīng)該盡可能地將應(yīng)用程序和數(shù)據(jù)托管在靠近終端用戶的地方。有兩種主要方法可以做到這一點——使用CDN或在物理上接近最終用戶的數(shù)據(jù)中心托管工作負(fù)載。
哪種方法是最好的?答案取決于企業(yè)的預(yù)算、正在管理的工作負(fù)載類型以及用戶分布有多廣泛等因素。本文探討了這些因素,以便為在CDN和數(shù)據(jù)中心之間進(jìn)行選擇提供指導(dǎo),從而提高工作負(fù)載性能。
內(nèi)容交付網(wǎng)絡(luò)(CDN)如何影響網(wǎng)絡(luò)性能?
CDN是存儲內(nèi)容緩存副本的服務(wù)器集合。如果服務(wù)器分布在廣泛的地理區(qū)域,則可以將來自不同區(qū)域的用戶的內(nèi)容請求路由到離這些用戶最近的服務(wù)器。
通過這種方式,CDN可以提高內(nèi)容到達(dá)用戶的速度。雖然理論上數(shù)據(jù)幾乎可以瞬間在互聯(lián)網(wǎng)上傳輸,但實際上,服務(wù)器和用戶之間的物理距離越遠(yuǎn),數(shù)據(jù)到達(dá)用戶所需的時間就越長。延遲是由于數(shù)據(jù)在長距離傳輸時必須通過更多網(wǎng)絡(luò)設(shè)備等因素造成的。
數(shù)據(jù)中心如何提高網(wǎng)絡(luò)性能?
數(shù)據(jù)中心可以實現(xiàn)類似的網(wǎng)絡(luò)性能提升,盡管方式不同。
通過戰(zhàn)略性地選擇承載工作負(fù)載的數(shù)據(jù)中心位置,企業(yè)可以將工作負(fù)載部署在物理上靠近用戶的數(shù)據(jù)中心中。世界各地分布著數(shù)百個數(shù)據(jù)中心,其中包括私有數(shù)據(jù)中心、托管設(shè)施和云提供商擁有的數(shù)據(jù)中心——這使得選擇最適合網(wǎng)絡(luò)性能優(yōu)化的數(shù)據(jù)中心位置成為可能。
CDN和數(shù)據(jù)中心之間的一個重要區(qū)別是,CDN只存儲緩存的內(nèi)容,而數(shù)據(jù)中心可以托管完整的應(yīng)用程序。這種差異可能會對企業(yè)放置在CDN或數(shù)據(jù)中心中的工作負(fù)載類型產(chǎn)生重要影響。
CDN和數(shù)據(jù)中心哪個更好?
在CDN或數(shù)據(jù)中心中托管工作負(fù)載以提高網(wǎng)絡(luò)性能是否更有意義取決于以下考慮因素。
(1)成本
總的來說,使用CDN將內(nèi)容放置在靠近最終用戶的地方,通常比在多個數(shù)據(jù)中心托管內(nèi)容的成本要低。然而,從成本的角度來看,CDN是否會表現(xiàn)得更好取決于:
·企業(yè)正在傳輸多少數(shù)據(jù)。大多數(shù)CDN提供商主要根據(jù)傳輸?shù)臄?shù)據(jù)總量收費,但對于數(shù)據(jù)中心來說,數(shù)據(jù)傳輸量只是定價的眾多潛在因素之一。在某些情況下,在企業(yè)自己的數(shù)據(jù)中心中托管具有非常高網(wǎng)絡(luò)流量需求的工作負(fù)載可能更便宜。
·企業(yè)是建立自己的數(shù)據(jù)中心還是使用別人的數(shù)據(jù)中心。創(chuàng)建自己的數(shù)據(jù)中心可能需要花費數(shù)百萬美元,而使用托管設(shè)施或公有云每年可能只需花費幾千美元,具體取決于企業(yè)的工作負(fù)載和基礎(chǔ)設(shè)施需求。
·企業(yè)需要在多少個位置上托管內(nèi)容。如果企業(yè)需要跨幾十個位置緩存內(nèi)容,那么CDN的成本可能會低得多,但是如果企業(yè)需要為用戶集中的少數(shù)幾個區(qū)域提供服務(wù),那么僅在幾個戰(zhàn)略位置的數(shù)據(jù)中心托管工作負(fù)載可能更具經(jīng)濟(jì)意義。
簡而言之,作為向多個用戶分發(fā)內(nèi)容的一種方式,CDN在大多數(shù)情況下比數(shù)據(jù)中心便宜。
(2)用戶的位置和分布
如果企業(yè)的最終用戶分散在全球各地,那么使用CDN來提高其性能幾乎肯定比設(shè)置多個數(shù)據(jù)中心更有意義。但是,在用戶集中在特定地理區(qū)域的情況下(例如,如果企業(yè)的用戶是需要從企業(yè)園區(qū)訪問內(nèi)部業(yè)務(wù)應(yīng)用程序的員工,而不是位于他們選擇的地方的客戶),將工作負(fù)載托管在靠近這些站點的數(shù)據(jù)中心可能更有意義。
(3)工作負(fù)載需求
同樣,與數(shù)據(jù)中心不同,CDN不托管完整的應(yīng)用程序?qū)嵗K鼈冎皇峭泄軆?nèi)容緩存。因此,CDN可以很好地提高依賴于靜態(tài)內(nèi)容的工作負(fù)載的性能,但在應(yīng)用程序需要實時生成定制內(nèi)容的情況下,它們就不那么有用了。在后一種情況下,分布式數(shù)據(jù)中心可能比CDN更好。
例如,如果企業(yè)有一個Web應(yīng)用程序,主要提供一般的內(nèi)容(例如圖像和視頻),CDN通常會提高應(yīng)用程序的性能,因為用戶位于不同的地區(qū)。但是,如果企業(yè)的應(yīng)用程序為每個用戶創(chuàng)建自定義圖像,CDN不會提高性能,因為沒有辦法提前生成和緩存自定義內(nèi)容。
(4)控制
因為CDN只存儲緩存的內(nèi)容,它不能提供控制功能。企業(yè)無法訪問為其工作負(fù)載提供動力的物理基礎(chǔ)設(shè)施,而且其配置網(wǎng)絡(luò)和安全策略的能力通常有限。使用數(shù)據(jù)中心,企業(yè)通常可以完全控制,特別是如果在自己的硬件上運行工作負(fù)載(而不是使用公有云)。
如果企業(yè)正在處理不需要以復(fù)雜的方式監(jiān)視或管理的工作負(fù)載,那么這種差異可能無關(guān)緊要。但是,對于具有獨特管理需求的工作負(fù)載來說,它可能使數(shù)據(jù)中心成為比CDN更好的選擇。
結(jié)論
CDN和數(shù)據(jù)中心都可以幫助加快應(yīng)用程序內(nèi)容的交付,但它們的實現(xiàn)方式不同。一般來說,CDN是更簡單、更便宜的選擇,盡管在某些情況下,特別是那些涉及復(fù)雜工作負(fù)載的情況下,需要的不僅僅是通用內(nèi)容緩存來提高性能,而在具有戰(zhàn)略意義的數(shù)據(jù)中心之間分配工作負(fù)載比使用CDN更有意義。
關(guān)于企業(yè)網(wǎng)D1net(hfnxjk.com):
國內(nèi)主流的to B IT門戶,同時在運營國內(nèi)最大的甲方CIO專家?guī)旌椭橇敵黾吧缃黄脚_-信眾智(www.cioall.com)。同時運營19個IT行業(yè)公眾號(微信搜索D1net即可關(guān)注)。
版權(quán)聲明:本文為企業(yè)網(wǎng)D1Net編譯,轉(zhuǎn)載需在文章開頭注明出處為:企業(yè)網(wǎng)D1Net,如果不注明出處,企業(yè)網(wǎng)D1Net將保留追究其法律責(zé)任的權(quán)利。