GMGC2016|阿里云資深架構(gòu)師劉英飛:游戲+阿里云,云端共贏
2016年3月7-9日,由全球移動游戲聯(lián)盟主辦的第五屆全球移動游戲大會GMGC2016在國家會議中心盛大舉行,作為亞太地區(qū)***影響力的游戲行業(yè)盛會,此次大會以“Game2.0:創(chuàng)新不止·忠于玩家”為主題,包括騰訊、百度、360、阿里、谷歌、中手游、京東、藍(lán)港互動等在內(nèi)的來自全球移動游戲及泛娛樂產(chǎn)業(yè)的開發(fā)商、運營商、制作商、平臺商、硬件廠商、大眾玩家以及相關(guān)政府機構(gòu)和國際產(chǎn)業(yè)組織齊聚一堂,共話移動游戲及泛娛樂產(chǎn)業(yè)的熱點議題。8日上午,GMGC2016開發(fā)者訓(xùn)練營(Developers Camp)開幕。來自阿里云資深架構(gòu)師劉英飛進行了主題為“游戲+阿里云,云端共贏”的演講。
以下是課程內(nèi)容實錄:
劉英飛:大家好!非常高興在這跟大家分享一下我們阿里云在游戲行業(yè)的技術(shù)特點和產(chǎn)品特征。
我剛才在會場逛了一圈,發(fā)現(xiàn)今天大會和去年和前年都有很大不同,我發(fā)現(xiàn)云廠商參會的非常多,游戲廠商傳統(tǒng)的減少了。為什么這些云廠商會大量進入到游戲行業(yè)呢?因為從國外的經(jīng)驗到國內(nèi)經(jīng)驗來看,其實游戲行業(yè)和云計算是天然共生的,在所有云供應(yīng)商里面,阿里云和其他公有云***的區(qū)別是什么呢?首先阿里云上面承載的是我們阿里巴巴集團的核心架構(gòu),阿里巴巴的淘寶天貓都是跑在阿里云之上的,這是***的區(qū)別。等于是你開了一家飯店,但是你自己會不會在里面吃飯的問題,很多云供應(yīng)商他們自己的核心業(yè)務(wù)并沒有跑在公有云之上。每年的雙十一對大家來講是消費的狂歡節(jié),但對我們來說就是***的一次壓測。我們對整個集團提供服務(wù)。這是我們自研的分布式系統(tǒng)。
這是阿里云整體部署架構(gòu)圖,現(xiàn)在我們在全球多點數(shù)據(jù)中心上面架構(gòu)X86極群,超過20萬臺物理機連起來,我們類比開發(fā)者,上面藍(lán)色部分就是云產(chǎn)品。后面這張圖是我們目前在阿里云上對于游戲云業(yè)務(wù)的前景圖,對于游戲這個行業(yè)來說,云供應(yīng)商要提供的不僅是非常穩(wěn)定的產(chǎn)品和帶寬,更重要的是在云上面提供金牌7×24小時的服務(wù)。這是目前我們阿里云能夠提供給客戶的產(chǎn)品全家圖,從彈性計算到數(shù)據(jù)庫,再到CDN存儲,包括PaaS的東西,全齊了。這張是我們目前能看到的游戲行業(yè)常用業(yè)務(wù)全景圖,我分塊解釋一下。這是游戲平臺,包括登陸支付,包括其他渠道接口平臺。第二個是Game Server,這塊對游戲廠商來說是最重要的。最右面是游戲的數(shù)據(jù)平臺。剛才Unity也講到了,包括游族網(wǎng)絡(luò)也講到了,很多游戲廠商都在做精細(xì)化運營,精細(xì)化運營就是數(shù)據(jù)分析能力。給大家講講我們阿里巴巴怎么樣用大數(shù)據(jù)的方式去提高游戲用戶的留存率。
首先是阿里云上的游戲?qū)m椉海覀兊膬?nèi)網(wǎng)隔離做的非常好,在公有云上,就像一個飯店一樣,其他的公有云,比如你買10臺或者100臺,它們之間有影響,但我們能夠隔離,并保持高速。CPU性能保障,磁盤I/O性能保障。當(dāng)然,最重要的是數(shù)據(jù)庫部分,阿里巴巴是做電商起家的,我們最重要的是數(shù)據(jù)庫。接下來是我們在游戲集群上最重要的的是RDS,我們這些數(shù)據(jù)庫用起來和正常的數(shù)據(jù)庫是一模一樣的,但后面能提供什么多余的服務(wù)呢?這是我們的全景圖,你使用的一個數(shù)據(jù)庫是雙核的,能保證你的游戲數(shù)據(jù)不可能丟失,也不可能檔機,保證用戶的數(shù)據(jù)絕對不會回檔或者有丟失,或者沒法校驗的情況發(fā)生。這個圖周邊部分是我們阿里云自己開發(fā)的一套集群控制部分,包括自動任務(wù)調(diào)度,包括在線遷移,包括備份,有了它的保障,讓游戲客戶,包括游戲大廠商不用找專職人員,在數(shù)據(jù)庫全部解決。
除了我們能做到邏輯上的保障之外,在底層硬件上我們怎么保障呢?一個數(shù)據(jù)庫和一臺服務(wù)器,從機柜到電源,我們都分兩份。比如你所購買的一臺服務(wù)器和數(shù)據(jù)庫,它不可能因為一些能源,比如電源斷了,去損耗你的數(shù)據(jù)。再是怎樣減少停機時間,目前我們的公有云上可以做到可用性達99.95%,我們是雙節(jié)點冗余,有問題直接切到備庫。大部分開發(fā)者,無論是個人開發(fā)者還是公司,他們都很頭疼數(shù)據(jù)怎么做備份,但造成的一個問題是空間很大成本很高。我們阿里云數(shù)據(jù)庫本身是默認(rèn)給你保持七天日志,數(shù)據(jù)會恢復(fù)到一個臨時實例,可以直接回到那個時間點進行校驗。再是數(shù)據(jù)容災(zāi),現(xiàn)在很多游戲能夠做到玩家跨區(qū)戰(zhàn)斗,面對游戲行業(yè)的這個變革,對于數(shù)據(jù)庫的容災(zāi)和數(shù)據(jù)庫的安全性要求逐步提高,我們目前能夠做到三級高可用容災(zāi)架構(gòu),這是***級最基本的。第二級在云上可以做到多可用區(qū)部署。我們也可以做到異地容災(zāi),大家都知道余額寶,跟金融相關(guān)的所有項目至少需要兩地三中心異地部署的,目前我們可以對游戲用戶把這個功能開放出來,提供三層容災(zāi)保障。
在阿里云上我們的數(shù)據(jù)可以熱升級,完全不影響你的業(yè)務(wù),我們的技術(shù)可以做到這一點,幫助很多客戶上線初期減少很多麻煩,很多客戶,包括小的開發(fā)者,預(yù)估不到未來數(shù)據(jù)庫影響多大,在云上開一個最小實例,隨著業(yè)務(wù)量增長,你可以隨時把數(shù)據(jù)升到更高的位置,這是縱向擴展。其實阿里云數(shù)據(jù)庫***的是橫向擴展,它是一個數(shù)據(jù)庫的集群,這是DRDS,分布式的數(shù)據(jù)庫。目前在游戲行業(yè)能用這么大擴展能力和這么大數(shù)據(jù)吞吐量的還很少用到,但未來會用到這些***技術(shù)。這是數(shù)據(jù)庫。
說完數(shù)據(jù)庫說我們的網(wǎng)絡(luò),阿里巴巴最早做電商,我們有兩個技術(shù),一個是SQL技術(shù),一個是CDN。我們?nèi)蛩泄?jié)點都是純自建的,而且目前能夠把成本做到***,帶寬做到***,質(zhì)量***。左邊部分是阿里云的基線,其他的廠商,基本上從各個地區(qū)和各個運營商基調(diào)測試來看,都大大弱于阿里云,只有幾個比較偏僻的地方,一些小的地方比較偏的問題他會有一些優(yōu)勢。
說完游戲服務(wù)器,第二部分是我們的游戲平臺部分。
無論你現(xiàn)在是開發(fā)者或者是小CP,或者是中型廠商,你的游戲平臺部分可能不會很多,但這是核心,所有的登陸、支付和接口都在這部分,我們一定要保證高可用性。這是跑在云上的卡牌游戲,左邊是他的平臺部分,想表達的是大部分游戲廠商在他們平臺部分完全沒有做任何高可用的架構(gòu)設(shè)計。你們公司的平臺部分,不說官網(wǎng),就說登陸和支付,它可能都是單機,登陸的話除非你是剛發(fā)行的時候并發(fā)量很大,沒有必要做負(fù)載均衡,但實際上是錯的,我們之前看過很多游戲客戶,他屬于中型廠商的時候沒有那么大的并發(fā)量,但如果有一天他收了比較好的IP,準(zhǔn)備上線的時候,發(fā)現(xiàn)他推的這一天從UC或者360過來的用戶遠(yuǎn)遠(yuǎn)超過他的預(yù)測,這個時候他的平臺不給力,檔掉了,但是在我們云平臺我們可以幫他解決。我們在平臺部分向用戶強烈推薦的,而且是在云上做護航的重點客戶。目前華人對開源社區(qū)做***貢獻的就是我們阿里巴巴***技術(shù)官貢獻給開源社區(qū)的。簡單來說,你的整個平臺入口完全沒有任何單點故障,如果一臺服務(wù)器有故障切到另一臺。
這是真實的負(fù)載均衡部分架構(gòu)圖,我們在所有關(guān)鍵點上都是物理上兩臺機器,假設(shè)這個負(fù)載均衡設(shè)備在一個機房里,這個機房也出現(xiàn)故障。中國的骨干網(wǎng)聯(lián)通電信經(jīng)常出現(xiàn)抖動,導(dǎo)致不穩(wěn)定。我們現(xiàn)在可以提供更高級的容災(zāi),如果這個時候電信出現(xiàn)任何故障,可以把應(yīng)用全部承接過去,保證你的登陸平臺支付平臺不會受到任何影響,電信有故障還可以走聯(lián)通。后面是數(shù)據(jù)分析平臺,結(jié)合前面幾位講的,包括Unity ADS廣告,社會黨人說做數(shù)據(jù)想的是怎么用這個數(shù)據(jù)把我的客戶更吸引住,其實我們阿里巴巴,包括馬云提倡的是我們做到千人千面。09年阿里云成立,2010年我們非常低調(diào)上線了一個ODPS平臺,在2012年整個集團做了一件事,阿里巴巴集團將所有數(shù)據(jù)匯總到這個平臺上,現(xiàn)在大家看到的阿里巴巴所有數(shù)據(jù),我們收購的,所有的數(shù)據(jù),這么大規(guī)模數(shù)據(jù)都在一個平臺上,就是ODPS平臺上。把數(shù)據(jù)匯總到一起可以多維度分析你的用戶,做用戶畫像,每個人登陸淘寶你看到的界面都是不一樣的,這就是所謂的“千人千面”。剛才Unity廣告也是,他只是說每個人都要看這個視頻,但你是否能夠通過大數(shù)據(jù)分析這個用戶想看的是什么視頻,如果你給他看的是他感興趣的視頻,你的收入就會大大增加,這是我們大數(shù)據(jù)做的東西。
后面給大家介紹一下目前我們大數(shù)據(jù)能處理的能力,包括我們的單核已經(jīng)超過500TB內(nèi)存能力,超過10萬核的能力,包括留存分析,需要邏輯回歸算法,有多大數(shù)據(jù)算多大數(shù)據(jù)。你知道大致知道怎么寫SQL,知道哪個算法,就可以即開即用。
剛才所有的東西總結(jié)成一句話,數(shù)據(jù)存和用,在存通這塊我們向客戶提供的是什么呢?以前我們做到的是游戲部署在云上,做大數(shù)據(jù)分析,現(xiàn)在游戲不在云上。我們舉一個例子,墨跡天氣APP,很多海外華人也在用這個APP,這個APP已經(jīng)擁有超過4億注冊用戶,每天日志增長的非常快,需要分析每天哪個區(qū)域有哪些用戶增長很快,我對他推送什么樣的天氣和相應(yīng)的廣告。這是他在云上的整體部署圖,他在國內(nèi)、韓國、日本都有自己的機房,在機房上部署了阿里云數(shù)據(jù)采集,每天寫他的SQL,做數(shù)據(jù)分析,然后形成日志,做他的整體報表。原來他這個平臺是跑在亞馬遜AWS上,為什么遷到阿里?因為亞馬遜是面向開源的,沒有對底層數(shù)據(jù)量進行壓縮,我每天采集的日志可能有400G、500G,每天存這些數(shù)據(jù)就有很高的成本,大量都是重復(fù)的日志,你可以做很好的壓縮,壓縮完之后把空間壓到很小。我們云上本身做壓縮,能夠把存儲成本降低到之前的70%,減到30%,從成本到技術(shù)到實現(xiàn)上都是可以的。
我今天主要講三點,簡單可靠,成本***。在游戲平臺部分,阿里云可以保證你的平臺不會出任何故障。在大數(shù)據(jù)方面,阿里云是目前公有云提供商里面***進的,可以即開即用的。謝謝大家!