




已閱讀5頁,還剩65頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
QQGame后臺架構(gòu)及開發(fā)介紹,Agenda,整體結(jié)構(gòu)框架業(yè)務(wù)模塊介紹海量用戶的運(yùn)營在現(xiàn)實(shí)中掙扎,QQGame后臺?,全球最大的休閑游戲平臺3億2千萬用戶,400萬人同時在線比魔獸世界更出色的系統(tǒng)架構(gòu)為無數(shù)程序員所景仰,整體框架圖,關(guān)鍵業(yè)務(wù)模塊,輔助業(yè)務(wù)模塊,游戲秀系統(tǒng)聊天系統(tǒng)道具系統(tǒng)寶寶系統(tǒng)商城和付費(fèi)模塊好友功能家族系統(tǒng)反外掛系統(tǒng)營銷消息系統(tǒng)RTI對外服務(wù),游戲秀存儲,16臺AvatarDBSvr存儲了1億多用戶的游戲秀資料。游戲心語、自定義性別和昵稱、地區(qū)星座職業(yè)等內(nèi)容也是游戲秀資料的一部分。衣服只是一個ID而已。,游戲秀兩個交互途徑,如何看到自己的游戲秀個人資料服務(wù)器登錄時拉取如何看到其他人的游戲秀進(jìn)房同步數(shù)據(jù)下發(fā)和房間事件下發(fā),或者客戶端主動請求。,游戲秀非實(shí)時更新,為什么需要重新登錄大廳才能看到自己的游戲秀改變?大廳只在登錄的時候拉取一次自己的游戲秀,如果游戲秀在大廳不知道的情況下發(fā)生了變動,就只能重新登錄才能看到變動。道具商城購買、物品欄保存形象、創(chuàng)建角色秀等不用重新登錄大廳。,聊天系統(tǒng)多樣化,小喇叭QQ游戲虛擬世界中的硬通貨。煙花很貴很漂亮。房間內(nèi)聊天窮人的小廣告游戲桌內(nèi)聊天邊玩邊聊,聊天系統(tǒng)拓?fù)浣Y(jié)構(gòu),拓?fù)浣Y(jié)構(gòu),聊天系統(tǒng)臟語過濾,過濾對象:政治性敏感詞匯、色情類詞匯、虛假消息。過濾結(jié)果:馬賽克、丟棄、拉黑。過濾方式:字符串匹配。,聊天系統(tǒng)打擊,與人斗其樂無窮,zhongjiang,商城系統(tǒng),拓?fù)浣Y(jié)構(gòu),商城系統(tǒng)業(yè)務(wù)流程,商城服務(wù)器、商品配置下載服務(wù)器、支付QQAccountProxySvr處理時序:1.處理購買請求2.合法性檢查3.批價扣費(fèi)4.發(fā)貨,商城系統(tǒng)故障,無法打開:1.無法下載商城布局資源。2.無法拉取個人資料信息。道具被刷:1.扣錢失敗,發(fā)貨卻成功。2.利用溢出,花少量的錢購買大量的商品。小喇叭一個8000游戲幣,破解客戶端一次購買了536871個小喇叭,價格是8000*536871=4294968000(溢出)。使得用戶只花費(fèi)了704個游戲幣。,好友和家族系統(tǒng),接入和邏輯:單獨(dú)的好友和家族前端服務(wù)器存儲:好友DBSvr和家族DBSvr,反外掛系統(tǒng),外掛的類型:crack、模擬器?;凇坝嬎?、應(yīng)答”模式的反外掛系統(tǒng)??蛻舳嗽谝?guī)定的時間內(nèi)必須回答MainSvr一個正確的計算值。反外掛系統(tǒng)是MainSvr的一部分,計算邏輯剝離成單獨(dú)的進(jìn)程,MainSvr進(jìn)程只負(fù)責(zé)數(shù)據(jù)轉(zhuǎn)發(fā)。,營銷消息系統(tǒng),沒有營銷消息的系統(tǒng)不能算平臺。QQGame需要怎樣的營銷消息?,用途廣泛:登錄提示進(jìn)房提示房間內(nèi)滾動定向(按號碼、按游戲、按房間、按座位)發(fā)送,使用方便:誰都可以發(fā)可以自動發(fā),營銷消息-拓?fù)浣Y(jié)構(gòu),營銷消息陸??胀斗?RTIRunTimeInfrastructure,產(chǎn)品的大部分需求:用戶做了XX事情的時候,給用戶一個XX提示。用戶的XX屬性發(fā)生變化的時候,給用戶一個XX提示。用戶做了XX事情的時候,修改用戶的XX屬性值。需求總結(jié)如下:游戲系統(tǒng)產(chǎn)生的事件,在游戲系統(tǒng)外部加工后反饋給游戲系統(tǒng),并影響游戲的邏輯。事件必須是游戲邏輯本身已經(jīng)存在的。游戲系統(tǒng)能接受該反饋的輸入指令。,RTI拓?fù)浣Y(jié)構(gòu),RTI本質(zhì)是一個數(shù)據(jù)分發(fā)器,RTI拓?fù)浣Y(jié)構(gòu),RTI本質(zhì)是一個數(shù)據(jù)分發(fā)器,RTI應(yīng)用實(shí)例,寶寶系統(tǒng),對外服務(wù),AccountSvr為外部應(yīng)用(主要是web)提供以下服務(wù)1.加減游戲幣2.加減歡樂豆3.家族操作4.用戶信息查詢5.道具和Avatar贈送,核心業(yè)務(wù)模塊,業(yè)務(wù)系統(tǒng)的三層框架模型負(fù)載均衡的dir統(tǒng)一的中心配置管理策略大容量的接入服務(wù)器無縫插接游戲的MainSvr帶路由功能的數(shù)據(jù)交換機(jī)存儲海量用戶的數(shù)據(jù)庫,業(yè)務(wù)系統(tǒng)的三層框架,負(fù)責(zé)網(wǎng)絡(luò)接入,負(fù)責(zé)游戲邏輯,負(fù)責(zé)數(shù)據(jù)轉(zhuǎn)發(fā),負(fù)責(zé)數(shù)據(jù)存儲,目錄樹系統(tǒng)負(fù)載均衡,用戶的最終目標(biāo),是Login游戲服務(wù)器進(jìn)行娛樂。400萬同時在線,如何分流這些用戶到不同的游戲服務(wù)器上?目錄樹服務(wù)器DirSvr,目錄樹系統(tǒng),19臺DirSvr服務(wù)器提供導(dǎo)航樹的下載、游戲服務(wù)器列表的下載、大廳配置文件的下載。,中心配置策略,大容量接入服務(wù)器,游戲服務(wù)器面臨的問題:大數(shù)據(jù)量快速交互海量并發(fā)數(shù)下的響應(yīng)解決之道:接入與邏輯分離的進(jìn)程模型采用Epoll模型接入層和邏輯層之間采用共享內(nèi)存高速通信,MainSvr進(jìn)程模型,MainSvr,TCPSvr,PIPEIN,PIPEOUT,AUXThread1,AUXThread2,Ctrl,Ctrl,Data,Data,無縫插接游戲,MainSvr,Room0,Room1,Room2,Zq.so,Ddzrpg.so,Ddzrpg.so,基于房間的游戲調(diào)度,每個MainSvr進(jìn)程可以開設(shè)60個游戲房間每個游戲都能部署在任意房間里房間數(shù)能夠根據(jù)游戲運(yùn)營情況動態(tài)調(diào)整,數(shù)據(jù)交換機(jī)TCPProxySvr,邏輯層和存儲層之間的數(shù)據(jù)交換機(jī)和路由器使得邏輯層和存儲層在部署層面上解耦合沙漏型結(jié)構(gòu),便于管理多種路由方式選擇:點(diǎn)對點(diǎn)、Key轉(zhuǎn)發(fā)、組播和廣播Proxy本身無狀態(tài)無存儲,便于擴(kuò)展,TCPProxySvr的路由表,海量存儲GameDBSvr,同時在線:400萬活躍用戶數(shù):2000萬注冊用戶數(shù):3億2千萬大量的并發(fā)游戲幣、歡樂豆、游戲積分和游戲數(shù)據(jù)的更改及查詢,GameDBSvr進(jìn)程模型,GameDBSvr的性能,大容量Cache:99%的命中率,直接減少讀IO。多線程處理:邏輯處理和數(shù)據(jù)庫IO分開,提高吞吐率。數(shù)據(jù)庫調(diào)優(yōu):Innodb引擎,禁止自動提交事務(wù)。,分布的數(shù)據(jù)中心,64臺GameDBSvr,本地存儲數(shù)據(jù)按號段存儲groupkey=(UIN16)%256通過TCPProxySvr全連接所有的MainSvr,存儲層的樹狀擴(kuò)展模型,DB0,DB0,DB1,DB0,DB2,DB1,DB3,。,DB的分裂方式,繼承和數(shù)據(jù)遷移主從數(shù)據(jù)同步,統(tǒng)一切割,III.海量用戶下的運(yùn)營能力,面對持續(xù)增長的用戶壓力,如何處理?擴(kuò)容面對突發(fā)的請求量和業(yè)務(wù)暴漲,如何應(yīng)對?防過載面對日益惡化的互聯(lián)網(wǎng)環(huán)境,如何保持用戶體驗(yàn)?多IDC部署如果深圳地震了,是否能夠繼續(xù)運(yùn)營?設(shè)備冗余,持續(xù)的擴(kuò)容能力,業(yè)務(wù)邏輯要能支持無限擴(kuò)容存儲無關(guān)模塊的快速擴(kuò)容存儲模塊的有序擴(kuò)容,不做無準(zhǔn)備擴(kuò)容,對系統(tǒng)負(fù)荷和容量有深刻的認(rèn)識系統(tǒng)的短板效應(yīng)時刻關(guān)注系統(tǒng)狀況,平滑擴(kuò)容,對用戶和其他模塊透明動態(tài)和灰度擴(kuò)容,過載保護(hù)雪崩,系統(tǒng)的性能與負(fù)載曲線,雪崩的原因,用戶的行為無法控制反復(fù)登錄瘋狂刷新頁面系統(tǒng)的高度耦合性使得模塊之間互相依賴多米諾骨牌效應(yīng)單點(diǎn)故障效應(yīng),曾經(jīng)的案例,Dir請求數(shù)過多,導(dǎo)致系統(tǒng)雪崩,中斷服務(wù)8小時。奧運(yùn)門票銷售第一天,中國銀行網(wǎng)點(diǎn)全部崩潰。CGX事件導(dǎo)致QQ.com服務(wù)崩潰。,防止雪崩,深刻了解系統(tǒng)的瓶頸限定系統(tǒng)處理能力20%的崩潰不應(yīng)該影響80%的用戶優(yōu)先保證重點(diǎn)用戶的服務(wù),接入現(xiàn)狀問題,電信網(wǎng)通互訪困難長途鏈路很不穩(wěn)定特定路由無法連通單IDC難以覆蓋全球用戶,馬甲100:08:41呵呵,不好意思,因?yàn)槿蚋鱾€國家地區(qū)到我們各個機(jī)房的網(wǎng)絡(luò)質(zhì)量都不一樣,我們只能通過多個機(jī)房部署來盡量滿足大家的需要?dú)W洲用戶00:09:23我知道,我問過匈牙利的哥哥,他說他一點(diǎn)也不卡,但是英國和愛爾蘭就和我的情況一樣歐洲用戶00:09:41意大利的蒜蒜一定和我一樣,歐洲用戶00:09:58晚上我問問西班牙和奧地利的看看歐洲用戶00:16:12這倆天我晚上在家都不能打牌,10點(diǎn)就睡覺了,睡的頭都疼死了,也是你們的責(zé)任,原因運(yùn)營商,三大門派:南電信,北網(wǎng)通,教育科研網(wǎng)。絕大部分的電信玩家,蓬勃發(fā)展的網(wǎng)通用戶,無法忽略的教育網(wǎng)。三教九流:鐵通、長城寬帶、天威有線重組之后:中移動、聯(lián)通、電信三分天下。,原因基礎(chǔ)設(shè)施,兩大運(yùn)營商各自建設(shè)自己的骨干網(wǎng)。帶寬不斷被吞噬,P2P是萬惡之首。迎奧運(yùn),電信9擴(kuò),網(wǎng)通5擴(kuò)。,曾經(jīng)的西安電信26F,西北,華北東北,西南,華東華南,西安電信26F,多IDC部署,西安,上海,天津,深圳,多IDC的精細(xì)化運(yùn)營,基于地區(qū)、特定用戶訴求。重點(diǎn)游戲全國分布。網(wǎng)絡(luò)質(zhì)量隨時監(jiān)控,游戲房間動態(tài)調(diào)整。玩家就近接入,提升用戶體驗(yàn)。,如何應(yīng)對災(zāi)難?,9.11給我們的啟示汶川地震,西安IDC受到影響如果深圳地震了。,深圳IDC現(xiàn)狀,一半MainSvr部署在深圳(樞紐、龍崗、沙河、中深網(wǎng)通)一半的dirsvr部署在深圳(絕大部分在樞紐)幾乎所有用戶資料存放在深圳(沙河)深圳的滅頂之災(zāi)=QQGame的世界末日,努力活下去吧。,QQGame的容災(zāi)能力,數(shù)據(jù)容災(zāi)異地備份64臺GameDBSvr主機(jī)(沙河)+64臺GameDBSvr備機(jī)(西安)16臺AvatarDBSvr主從備份其余設(shè)備冷備份前端容災(zāi)設(shè)備冗余和快速部署能力多IDC冗余分布各種前端邏輯快速切換到其他IDC,容一個IDC的災(zāi)難,西安IDC故障:斷電斷網(wǎng)DB類服務(wù)切備機(jī)關(guān)停非重要類游戲重要類游戲快速遷往其他IDC的空閑機(jī),IV.在現(xiàn)實(shí)中掙扎,一個復(fù)雜的系統(tǒng),如何應(yīng)對各種故障?一個龐大的需求,如何進(jìn)行開發(fā)?進(jìn)度排不過來,產(chǎn)品和策劃該怎么辦?新業(yè)務(wù)上線,頻繁出現(xiàn)問題。大規(guī)模設(shè)備升級無休止的加班。,系統(tǒng)解耦合抗風(fēng)險,一個大燈泡和十個小燈泡的亮度是一樣的,抗風(fēng)險能力卻不同QQGame可以分拆成多個系統(tǒng)模塊單一模塊的故障不影響整個系統(tǒng)的服務(wù)非即不是我們的選擇。,大需求化小多次迭代,化整為零:需求是可以分解為多個小特性的。多次迭代:每次專注于一個小特性的開發(fā)。頻繁構(gòu)建:自動化測試保證代碼質(zhì)量。,分期上線解決資源沖突,當(dāng)產(chǎn)品需求和開發(fā)資源沖突時怎么辦?當(dāng)時間無法保證系統(tǒng)完整上線時怎么辦?買房可以分期付款,需求也可以分批交付。還是不要非即的選擇。,開發(fā)和運(yùn)維人員的現(xiàn)狀,大部分的加班都是由于版本回退造成的新業(yè)務(wù)的發(fā)布
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 介入術(shù)后溶栓的護(hù)理
- 2025年網(wǎng)絡(luò)與新媒體專業(yè)課程期末考試試卷及答案
- 2025年數(shù)據(jù)科學(xué)與人工智能相關(guān)知識考試卷及答案
- 2025年經(jīng)濟(jì)學(xué)原理考試卷及答案
- 2025年機(jī)器人技術(shù)工程師資格考試試題及答案
- 2025年自動化設(shè)備維護(hù)與管理培訓(xùn)考試試卷及答案
- 2025年甘肅省武威市古浪縣民權(quán)鎮(zhèn)招聘大學(xué)生村文書筆試參考題庫及答案詳解一套
- 物資設(shè)施設(shè)備管理制度
- 物資采購對賬管理制度
- 特勤中隊(duì)車輛管理制度
- 英語歌曲欣賞troubleisafriend
- 郵輪乘務(wù)員職業(yè)道德與素養(yǎng)PPT完整全套教學(xué)課件
- 有限責(zé)任公司章程兩個及以上股東樣本
- 山東開放大學(xué)工作人員招聘考試真題2022
- 夏季預(yù)防中暑及中暑急救培訓(xùn)PPT
- 地緣政治與中國的地緣戰(zhàn)略
- A0726 非授權(quán)人員進(jìn)入保密要害部門、部位審批表
- DB11T 065-2022電氣防火檢測技術(shù)規(guī)范
- 2022年和政縣政務(wù)中心綜合窗口人員招聘筆試試題及答案解析
- 鋁電解電容器
- GB/T 10653-2001高聚物多孔彈性材料壓縮永久變形的測定
評論
0/150
提交評論