日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
“王者榮耀”高并發(fā)背后的故事

背景

成都創(chuàng)新互聯(lián)專(zhuān)注于望城企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站設(shè)計(jì),電子商務(wù)商城網(wǎng)站建設(shè)。望城網(wǎng)站建設(shè)公司,為望城等地區(qū)提供建站服務(wù)。全流程按需求定制網(wǎng)站,專(zhuān)業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)專(zhuān)業(yè)和態(tài)度為您提供的服務(wù)

“王者榮耀”是一款國(guó)民級(jí)手機(jī)游戲,用戶(hù)體量巨大,而且一直保持著較高的更新頻率。這種業(yè)務(wù)場(chǎng)景下,突發(fā)也變得非常頻繁,然而業(yè)務(wù)體驗(yàn)是至關(guān)重要的,使用 CDN 必不可少。類(lèi)似地,經(jīng)常有帶寬突發(fā)的場(chǎng)景,比如新聞爆點(diǎn)視頻、大型直播活動(dòng)、熱門(mén)影視劇上線(xiàn)、熱門(mén)游戲等應(yīng)用發(fā)布。同時(shí),由于家庭帶寬和移動(dòng)網(wǎng)絡(luò)的快速升級(jí),突發(fā)帶寬量級(jí)越來(lái)越大,經(jīng)常達(dá)到 Tb 級(jí),甚至 10Tb 。如何快速、低成本地保障業(yè)務(wù)突發(fā),成為 CDN 的一大挑戰(zhàn)。

2007 年,騰訊自建 CDN 啟用,接入了***個(gè)業(yè)務(wù)騰訊網(wǎng)。到現(xiàn)在 CDN 帶寬量級(jí),從最早的數(shù)十 Gb,發(fā)展到現(xiàn)在的數(shù)十 Tb;單業(yè)務(wù)的帶寬也越來(lái)越大,大部分業(yè)務(wù)常量帶寬在幾百 Gb,部分突發(fā)業(yè)務(wù)達(dá)到了 10Tb。網(wǎng)絡(luò)的快速升級(jí),移動(dòng)用戶(hù)爆發(fā)式增長(zhǎng),以及視頻類(lèi)業(yè)務(wù)包括點(diǎn)播和直播的興起,使得業(yè)務(wù)突發(fā)越來(lái)越頻繁,突發(fā)帶寬越來(lái)越高,對(duì)CDN的要求也越來(lái)越高。

自建 CDN 得益于騰訊業(yè)務(wù)的蓬勃發(fā)展,先后支持了游戲下載、流媒體視頻加速、春節(jié)紅包等騰訊內(nèi)部業(yè)務(wù);2014 年騰訊將 CDN 全面能力開(kāi)放,成為 騰訊云 CDN 產(chǎn)品,除承載內(nèi)部業(yè)務(wù)外,也開(kāi)始接入第三方客戶(hù),比如快手點(diǎn)播、斗魚(yú)直播等。以上各種業(yè)務(wù)都有突發(fā)場(chǎng)景,也有很強(qiáng)的成本訴求,在如何低成本地保障業(yè)務(wù)突發(fā),騰訊 CDN 積累了豐富的經(jīng)驗(yàn)。接下來(lái)就挑戰(zhàn)和問(wèn)題、解決方案、效果三個(gè)方面來(lái)解析。

一、挑戰(zhàn)和問(wèn)題

下面將從業(yè)務(wù)特點(diǎn)開(kāi)始,分析目前存在的挑戰(zhàn)和問(wèn)題。

1、 業(yè)務(wù)特點(diǎn)和挑戰(zhàn)

CDN 多樣化的場(chǎng)景,注定了突發(fā)業(yè)務(wù)充滿(mǎn)挑戰(zhàn)。突發(fā)業(yè)務(wù)具有體量大、場(chǎng)景多樣化、 無(wú)規(guī)律等特點(diǎn)。

  1. 體量大:突發(fā)業(yè)務(wù)帶寬大部分都超過(guò) Tb,部分甚至達(dá)到了 10T ;
  2. 場(chǎng)景多樣化:點(diǎn)播中的熱劇和新聞爆點(diǎn);直播中的 LOL/KPL/DOTA2 等游戲直播,NBA/世界杯等體育直播,演唱會(huì)等綜藝直播;應(yīng)用下載中的王者榮耀等游戲下載;靜態(tài)網(wǎng)頁(yè)加速中的紅包活動(dòng)、電商促銷(xiāo)等;
  3. 無(wú)規(guī)律:部分突發(fā)活動(dòng)無(wú)法預(yù)知,活動(dòng)快要開(kāi)始或已經(jīng)開(kāi)始了才知道,比如新聞爆點(diǎn)。

體量大,需要準(zhǔn)備更多的資源;場(chǎng)景多樣化,需要滿(mǎn)足不同的資源需求;無(wú)規(guī)律性則對(duì)我們的擴(kuò)容效率提了很高的要求。

2、 目前存在的問(wèn)題

僅僅為了滿(mǎn)足業(yè)務(wù)突發(fā)需求而儲(chǔ)備大量的資源,成本太高,會(huì)造成資源極大的浪費(fèi)。所以一般會(huì)通過(guò)復(fù)用資源來(lái)應(yīng)對(duì)業(yè)務(wù)突發(fā)。但是直接復(fù)用資源,存在兩個(gè)問(wèn)題:

  1. 只能復(fù)用部分資源:CDN 業(yè)務(wù),一般按業(yè)務(wù)類(lèi)型來(lái)區(qū)分平臺(tái)和資源使用,主要原因是不同業(yè)務(wù)類(lèi)型對(duì)資源需求不同,比如點(diǎn)播類(lèi)需要更多的存儲(chǔ);有較多 https 請(qǐng)求的靜態(tài)頁(yè)面類(lèi),則需要更多 CPU 資源。這種限制使得資源無(wú)法充分利用,加大了資源準(zhǔn)備的難度。比如視頻突發(fā)主要使用視頻 Buffer,而下載類(lèi)和網(wǎng)頁(yè)類(lèi) Buffer 無(wú)法直接使用,這限制了 Buffer 的大小。即使復(fù)用同類(lèi)型資源,因?yàn)樯婕岸鄠€(gè)業(yè)務(wù)資源的協(xié)調(diào),準(zhǔn)備時(shí)間一般會(huì)超過(guò)兩天,無(wú)法應(yīng)對(duì)臨時(shí)突發(fā);
  2. 無(wú)法降低成本:另外針對(duì)部分突發(fā)業(yè)務(wù),比如游戲應(yīng)用下載,帶寬高峰期在上午和中午,如果只使用本平臺(tái)資源,會(huì)導(dǎo)致結(jié)算帶寬明顯上漲,從而增加成本。無(wú)法利用同其他業(yè)務(wù)錯(cuò)峰的特點(diǎn)來(lái)降低結(jié)算帶寬。

二、解決方案

騰訊云 CDN 通過(guò)虛擬化復(fù)用現(xiàn)有資源,搭建全業(yè)務(wù)通用的突發(fā)池,所有平臺(tái)共享 Buffer。 突發(fā)池中的設(shè)備為 Docker 虛擬機(jī),虛擬機(jī)有不同的規(guī)格,只要業(yè)務(wù)有需求,都可以按需使用。突發(fā)池中的帶寬儲(chǔ)備達(dá)到了 10Tb,基本能滿(mǎn)足所有業(yè)務(wù)突發(fā)需求 。任何業(yè)務(wù)有突發(fā)需求,配合自動(dòng)化上架接口,可在 10 分鐘完成 10Tb 突發(fā)池的擴(kuò)容。

1、 突發(fā)池系統(tǒng)架構(gòu)

突發(fā)池系統(tǒng)架構(gòu)見(jiàn)圖 1

圖 1 突發(fā)池系統(tǒng)架構(gòu)

  1. 突發(fā)池:在各平臺(tái)物理機(jī)的上層,由 Docker 虛擬機(jī)組成的資源池,對(duì) CPU/內(nèi)存/磁盤(pán)等使用進(jìn)行了限制,防止對(duì)物理機(jī)造成影響。原有業(yè)務(wù)依然部署在物理機(jī)上,不用調(diào)整。
  2. 自動(dòng)化部署和監(jiān)控系統(tǒng): 能根據(jù)業(yè)務(wù)實(shí)際需求,自動(dòng)預(yù)測(cè)需求并擴(kuò)容 。所有的突發(fā)需求,都能在 10 分鐘內(nèi)擴(kuò)容完成。針對(duì)點(diǎn)播/下載業(yè)務(wù),自動(dòng)分發(fā)熱點(diǎn)文件,降低回源帶寬。
  3. 調(diào)度系統(tǒng):突發(fā)業(yè)務(wù)的突發(fā)性和體量大兩個(gè)特點(diǎn),使得相比域名調(diào)度系統(tǒng),直通車(chē)更占優(yōu)勢(shì)。直通車(chē)調(diào)度更靈活,生效時(shí)間快,能達(dá)到分鐘級(jí)。

虛擬機(jī)和物理機(jī)部署了上報(bào) Agent,業(yè)務(wù)信息和服務(wù)器負(fù)載每分鐘都會(huì)上報(bào)到監(jiān)控系統(tǒng)。監(jiān)控系統(tǒng)會(huì)根據(jù)歷史帶寬預(yù)測(cè)一個(gè)值,并與當(dāng)前帶寬比較,如果當(dāng)前帶寬超過(guò)預(yù)測(cè)值的 50%,則認(rèn)為有突發(fā)。根據(jù)帶寬上漲的比例,系統(tǒng)會(huì)自動(dòng)從突發(fā)池中擴(kuò)容相應(yīng)數(shù)據(jù)的設(shè)備。針對(duì)提前準(zhǔn)備的突發(fā)活動(dòng),運(yùn)維可以指定帶寬需求量,之后系統(tǒng)便會(huì)自動(dòng)計(jì)算設(shè)備需求并擴(kuò)容。

分鐘粒度上報(bào)的服務(wù)器負(fù)載信息則為監(jiān)控系統(tǒng)做調(diào)度決策提供了依據(jù)。系統(tǒng)會(huì)依據(jù)機(jī)房剩余帶寬、服務(wù)器帶寬、CPU、IO 等綜合信息決定虛擬機(jī)是否需要從直通車(chē)中啟用或者禁用。用戶(hù)訪問(wèn)時(shí)先請(qǐng)求直通車(chē)調(diào)度系統(tǒng),直通車(chē)會(huì)根據(jù)調(diào)度策略返回一個(gè) 302 地址,302 地址中為實(shí)際 CDN 資源地址。用戶(hù)跳轉(zhuǎn)到 302 地址,并獲取實(shí)際內(nèi)容。

2、技術(shù)優(yōu)化

使用虛擬化技術(shù)復(fù)用資源的重要前提是,不影響現(xiàn)有業(yè)務(wù)。這就要求對(duì)資源有充分的隔離,比如 CPU/磁盤(pán),以及對(duì)帶寬的使用。下面是實(shí)現(xiàn)過(guò)程中存在的幾個(gè)問(wèn)題及解決方案:

精準(zhǔn)控制單機(jī)負(fù)載:負(fù)載過(guò)高會(huì)影響業(yè)務(wù)質(zhì)量,需要對(duì)單機(jī)負(fù)載進(jìn)行精準(zhǔn)的控制。


解決方案:

  1. 配額系統(tǒng):直通車(chē)中有配額系統(tǒng),對(duì)每個(gè)虛擬機(jī)可使用的資源做了限制,包括CPU/IO 和帶寬。監(jiān)控系統(tǒng)中上報(bào)的信息,結(jié)合配額系統(tǒng),可以確保服務(wù)器負(fù)載被限定在制定的范圍內(nèi),粒度為分鐘級(jí)。
  2. 部分請(qǐng)求返回 302:對(duì) CPU/帶寬/IO 等做了限制后,應(yīng)用程序能根據(jù)母機(jī)當(dāng)前負(fù)載,實(shí)時(shí)判斷是否處理一個(gè)請(qǐng)求。如果負(fù)載在限制范圍內(nèi),直接處理;如果負(fù)載超出限制,則返回 302,使用戶(hù)跳轉(zhuǎn)到直通車(chē)的調(diào)度地址,這樣能在盡量不影響業(yè)務(wù)質(zhì)量的情況對(duì)負(fù)載做精準(zhǔn)控制。程序?qū)用鎸?duì)負(fù)載的實(shí)時(shí)控制,是配額系統(tǒng)的有效補(bǔ)充。
  3. 網(wǎng)卡流量控制:在極端情況下,業(yè)務(wù)帶寬超過(guò)設(shè)定閾值,這時(shí)虛擬網(wǎng)卡會(huì)主動(dòng)丟包,避免對(duì)母機(jī)造成影響。

限制磁盤(pán)大?。篋ocker 在 ext3/ext4 文件系統(tǒng)中無(wú)法對(duì)文件/目錄級(jí)別進(jìn)行磁盤(pán)大小限制。


解決方案:

  • 由于騰訊云 CDN 業(yè)務(wù)基本都是使用 ext3/ext4 文件系統(tǒng),這種情況下 Docker 只能對(duì)根據(jù)用戶(hù)或用戶(hù)組對(duì)磁盤(pán)進(jìn)行限制,但現(xiàn)網(wǎng)業(yè)務(wù)都是直接在 root 環(huán)境下使用。這里我們使用 loop device 來(lái)解決磁盤(pán)大小限制問(wèn)題。虛擬機(jī)中突發(fā)業(yè)務(wù)使用掛載在 loop device 上的目錄,這樣就可以間接限制磁盤(pán)大小,防止使用太多磁盤(pán)影響其他業(yè)務(wù)。

CPU綁定:默認(rèn)是綁定所有 CPU,部分單 CPU 負(fù)載高會(huì)影響母機(jī)業(yè)務(wù)。


解決方案:

  • 通過(guò)腳本每分鐘采集一次系統(tǒng)所有單CPU負(fù)載,為避免頻繁調(diào)整和受毛刺數(shù)據(jù)影響,取15分鐘的均值。***選取負(fù)載較低的部分核,并通過(guò)配置文件cpuset.cpus來(lái)動(dòng)態(tài)綁定,將虛擬機(jī)對(duì)母機(jī)業(yè)務(wù)影響降低到最小,并且能充分利用資源。

效果

突發(fā)池上線(xiàn)后,高效支持了王者榮耀下載、NBA 直播、KPL/LPL 游戲直播等多次大型突發(fā)活動(dòng),節(jié)約成本 2000萬(wàn)。通過(guò)共享 buffer,搭建突發(fā)池能顯著提高突發(fā)能力和降低成本。

總結(jié)

騰訊云 CDN 通過(guò) Docker 技術(shù)復(fù)用資源,搭建 Tb 級(jí)別突發(fā)池,能支持直播、點(diǎn)播、靜態(tài)等各種業(yè)務(wù)突發(fā),能自動(dòng)檢測(cè)到業(yè)務(wù)突發(fā)需求并在 10 分鐘內(nèi)完成資源擴(kuò)容,具有發(fā)布快,成本低等特點(diǎn)。資源復(fù)用能提高資源利用率,為業(yè)務(wù)提供極大的突發(fā)池,但要注意復(fù)用業(yè)務(wù)之間不能相互影響,這需要對(duì)服務(wù)器進(jìn)行實(shí)時(shí)的監(jiān)控和及時(shí)的調(diào)度。

另外還有一些待改進(jìn)的地方,比如內(nèi)核參數(shù)基于容器隔離,方便不同業(yè)務(wù)調(diào)優(yōu);部分業(yè)務(wù)客戶(hù)端不支持 302 跳轉(zhuǎn),調(diào)度系統(tǒng)需要支持域名調(diào)度方式。 

 


網(wǎng)頁(yè)標(biāo)題:“王者榮耀”高并發(fā)背后的故事
標(biāo)題來(lái)源:http://www.dlmjj.cn/article/djojhpg.html