天天看點

以絕對優勢立足:從CDN和雲存儲來聊聊雲生态的崛起

前面幾期文章我們介紹了混合雲模式,以及面向應用層的雲架構解決方案的Spring Cloud。接下來,我們就以蘑菇街的兩個具體案例,來分享一下基于混合雲模式的具體實踐。 今天,我們先一起看一下我們最為熟悉的CDN和雲存儲建設。

CDN和雲存儲

我們之前提到,CDN應該算是最早期、最典型的公有雲服務,如果我們在業務上用到了CDN服務,其實就已經算是在實踐混合雲模式了。

蘑菇街作為ToC 的電商業務,自然會有大量的圖檔通路需求,其中尤以商品圖檔為最。為了保證使用者體驗,我們的産品在2011年上線之初,就應用了CDN技術,當時我們合作的都 是專業的CDN廠商。

當然,大量的圖檔通路需求會帶來大量的圖檔存儲需求,且随着業務高速發展,這個需求量必然會極速增長。

圖檔的通路需求量往往會以幾百萬、幾千萬、幾億到幾十億、上百億的增長态勢呈現。而它所占用的存儲空間也會從G擴充到T,到幾十T、幾百T,再到後來的P級别。

是以,起初我們在業務量不大的時候,還可以把圖檔存在自己的硬體裝置上。再往後可以利用HDFS這樣的對象存儲技術來實作,CDN回源的請求全部回到我們自己的機房裡。

但是再往後,我們在這方面的專業性就不夠了。這也是我在《為什麼蘑菇街會選擇上雲?是被動選擇還是主動出擊?》一文中介紹到的:随着體量的增加,CDN對于專業技術深度的要 求就越來越高,技術層面的投入也會越來越大,這個就與我們的業務發展訴求不一緻了。

因為對于蘑菇街來說,我們還是期望能夠把更多的人力和物力應用到業務技術層面,而不是一味耗費在專業技術研究上。

在2013年左右,業界開始出現專業的雲存儲廠商。在專業技術層面要比我們精深很多,而且他們聚攏了一大批業界專業人才,積累了各類海量存儲場景的實踐經驗,是以他們在産品 研發和服務支援上也是能夠持續深入的。

基于此,我們後來就選擇了将海量的圖檔放到專業性更強的雲存儲之上。 到這個階段,我們的圖檔通路和圖檔存儲就近乎完全依賴外部第三方的服務,同時也形成了CDN回源通路雲存儲這樣的雲應用模式。

再往後發展,随着國内兩大公有雲巨頭騰訊雲和阿裡雲相繼殺入CDN市場,這對傳統的CDN廠商和新興的雲存儲業務造成了很大的沖擊。但究其主要原因,我認為還是由于雲生态的 規模優勢發揮了作用。

雲生态的優勢

上面講到,我們使用的CDN是專業的CDN廠商業務,但在當時它們并不提供雲存儲業務。

同時,專業的雲存儲廠商固然在存儲技術上更擅長,加上它們大多屬于創業公司,也沒有太多的财力和人力再殺入CDN市場。

是以,這兩塊緊耦合的業務實際是由兩類不同的公司在獨立發展。但是,在阿裡雲和騰訊雲這樣的公有雲巨頭進入市場後,就極大地改變了這樣一個格局。

因為阿裡和騰訊各自都有遍布全球的超大規模的自有業務,在CDN、存儲技術以及資源上也有很深厚的積累。當公有雲蓬勃發展起來之後,這樣的技術和資源積累就可以從内部通過 雲平台輸出給公有雲的使用者。

那麼,阿裡雲和騰訊雲這種公有雲模式有哪些優勢呢?我們将CDN模式與其對比來看。

1.技術層面。

CDN模式下,圖檔上傳雲存儲以及CDN回源雲存儲,基本都是走公網網絡,在國内複雜的網絡條件下,傳輸品質就很難保障。

我記得2015年我來到蘑菇街接手運維的時候,就經常會遇到網站圖檔展示不出來或者打開特别慢的情況。這就需要找不同的CDN廠商定位一些個例問題,非常耗時且麻煩,令人頭 痛。

在這種形态下,因為是不同廠商間的協作,是以問題隻能在小範圍内優化,無法從根本上得到改善。但是,在以阿裡雲和騰訊雲為代表的公有雲模式下,這個問題就會迎刃而解。

因為阿裡和騰訊這兩大巨頭各自都有全球規模的業務體量,為了保證自身業務的通路體驗,它們一定會在CDN和存儲技術的優化、整合上下足工夫,是以更具備自我改進的動力。 尤其是上面我們提到的上傳和回源過程,在公有雲模式下基本都有專線品質保障。即使沒有專線,他們也會不斷優化中間的線路品質。 上雲後我們最明顯的感受,就是上傳和回源圖檔的成功率和速度都有非常大的改善,近一年來,我很少再碰到像圖檔展示慢這類問題了。

2.成本層面。

主要包括三塊費用:

CDN帶寬費用。使用者通路帶來的CDN流量費用,由各CDN廠商收取。對于傳統CDN廠商,之前價格相對固定和平穩,但是近兩年公有雲廠商入局後不斷降價,在價格上有非常大 的競争優勢,這也整體拉低了CDN價格。

回源帶寬費用。當CDN無法擷取到對應圖檔時,回源到雲存儲擷取,這部分回源帶寬費用由雲存儲廠商收取。但是在雲生态模式下,上面提到,CDN和雲存儲可以整合到某個公 有雲内部網絡體系内,在這個生态中,這部分費用成本就變得非常低了。

存儲空間費用。這一項費用由雲存儲廠商收取,CDN和公有雲這兩種模式在這一點上沒有太大差別。 還有其他諸如裁圖、HTTPS等服務,都分别會有不同的計費方式,但是這塊不是主要成本。

說到這裡,我們從整體的商務角度看一下:如果一位客戶在同一個地方購買的服務和資源越多,那麼商務運作和議價空間就會越大,得到的優惠力度也會更大。這就跟我們在同一家商店買的東西越多、折扣越多是一個道理。

但是,如果這些服務和資源都是不同廠商的,那就需要多方面溝通。整個過程耗時耗力,且能夠得到的優惠空間也非常有限。 是以,整體來看,雲生态在CDN和雲存儲這個層面,實實在在地幫我們降低了成本。

3.生态優勢,強者越強。

雲生态的天然優勢在于,雲平台上聚集了海量的客戶資源,隻要進入到這個生态中,一般情況下客戶都會首選生态内的産品,而不會再跳出去選擇其它獨立的 産品服務。

甚至即使之前用到了第三方的服務,客戶也會逐漸轉移回雲平台這個生态體系中來。 是以,我們現在可以看到這樣一種趨勢:很多獨立的技術産品,正在向雲生态靠攏,選擇跟公有雲合作,争取讓産品進入到某個雲生态中,并提供相應的雲上解決方案和技術支援。

同時,各大巨頭也會尋找在某些特定領域,有相當深度的技術産品進行投資,讓這些好的産品和解決方案進入到自己的雲生态中,以便進一步為雲上的客戶提供更全面、靈活和多樣性的支援。

總結

通過CDN和雲存儲這個案例,我們可以清晰地看到,随着公有雲的深入發展,特别是公有雲巨頭的飛速進步,公有雲已經形成了自有的、獨特的生态體系。