青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Sheppard Y

keep thinking keep coding.

集群實(shí)現(xiàn)細(xì)節(jié)(4)-冷熱數(shù)據(jù)劃分及同步

2016-07-11 日更新 
此篇博客已經(jīng)遷移到新博客,并做行文檢查和優(yōu)化排版:
http://blog.clawz.me/2013/12/13/13-game-cluster-design-detail-4/

 


 

一、玩家數(shù)據(jù)在redis與mysql之間的同步
    由于redis操作可以保證多個(gè)進(jìn)程讀寫同一個(gè)玩家數(shù)據(jù)時(shí)的原子性。所以之前多個(gè)邏輯服務(wù)器讀寫同一玩家數(shù)據(jù)時(shí)沒有什么問題,但是現(xiàn)在redis和mysql之間需要同步玩家的數(shù)據(jù)(例如定時(shí)將redis里的在線玩家數(shù)據(jù)刷進(jìn)mysql里做持久化)。這個(gè)同步的邏輯代碼放哪呢?
    觀察需求特性,玩家上線加載到redis做cache、定時(shí)更新持久層、玩家離線時(shí)清掉cache并更新到持久層,都是redis和mysql之間的數(shù)據(jù)交互。這些可以放到一個(gè)服務(wù)里,單進(jìn)程實(shí)現(xiàn),或者集成到現(xiàn)在的邏輯服務(wù)器里。
    方便實(shí)現(xiàn),做下限制。玩家登陸的邏輯服務(wù)器記為他的owner服務(wù)器,每個(gè)玩家數(shù)據(jù)的redis/mysql同步只由他owner來做。 這樣問題就簡化了。
    這里有些做法是突然想到的,就像《暗時(shí)間》里提到的聯(lián)想式的,而不是歸納演繹的。最近在看《暗時(shí)間》,好書,里邊就提到邊寫邊思考,思考時(shí)“大腦內(nèi)存”有上限的,邊寫就能把部分思考分支換出筆記這種“硬盤”上,然后大腦專心思考其中一兩個(gè)分支,想的差不多,再回過頭將“筆記硬盤”上的數(shù)據(jù)換入“大腦內(nèi)存”……將正在思考的東西寫博客的習(xí)慣已經(jīng)形成一段時(shí)間了,看了書后,更深切體會(huì)到這種好處。
    如果邏輯服務(wù)器宕機(jī),它上邊的玩家就掉線了,而這臺(tái)邏輯服務(wù)器是不能對(duì)這些玩家做離線數(shù)據(jù)持久化的。這種情況需要進(jìn)一步思考TODO。另外之前這種玩家怎么標(biāo)記為離線,需要再想一遍,也TODO了。
二、從本質(zhì)出發(fā)review我們的存儲(chǔ)架構(gòu)
    不要走的太遠(yuǎn)而忘了為什么出發(fā),從本質(zhì)上思考,棄掉那些不必要的思考分支,簡化問題。
    本質(zhì)我們的架構(gòu)是為實(shí)現(xiàn)游戲的玩法目標(biāo)來做的,另一方面我們考慮開發(fā)成本、維護(hù)成本、機(jī)器成本。好的架構(gòu)是權(quán)衡目標(biāo)實(shí)現(xiàn)程度和這些成本的耗費(fèi)。
    目標(biāo)是實(shí)現(xiàn)同一國家的玩家不分區(qū)分服。之前緩存和持久化都是用redis來做,開發(fā)成本和維護(hù)成本都挺低的。但是需要很多機(jī)器。現(xiàn)在控制機(jī)器成本,所以需要分析我們數(shù)據(jù)的特點(diǎn),將冷數(shù)據(jù)放到mysql這種機(jī)器需求量少的數(shù)據(jù)庫。具體到表的分析這里就不方便貼了。說下大概分類:
(1)離線玩家的冷數(shù)據(jù),離線玩家的私人數(shù)據(jù),不需也不能與別人交互的;
(2)離線玩家的熱數(shù)據(jù),例如名字,好友是想看到離線好友的名字的;
(3)在線玩家的一直更新的數(shù)據(jù),例如經(jīng)驗(yàn)值,游戲貨幣等;
(4)在線玩家的到強(qiáng)實(shí)時(shí)玩法時(shí)才更新的數(shù)據(jù)。
    (1)里的數(shù)據(jù)無疑問放在mysql里。(2)里的數(shù)據(jù)還得根據(jù)情況看是否一致放在redis里,即離線的玩家這部分?jǐn)?shù)據(jù)也放在redis里。(3)里的數(shù)據(jù)無疑問在線是放到redis里。(4)里的數(shù)據(jù)可以根據(jù)情況考慮下延遲加載什么的,即玩家上線時(shí)這部分?jǐn)?shù)據(jù)不馬上加載到redis,而是等玩家開始這個(gè)玩法時(shí)才從mysql里加載到redis里。這個(gè)需要考慮這個(gè)玩法的數(shù)據(jù)量以及是否玩家參與度高。
三、擴(kuò)展
    先了解mysql單表數(shù)據(jù)上限、然后mysql單庫上限。這里的上限指不影響效率的上限,而不是物理上限。拿到上限數(shù)據(jù)后,做預(yù)分庫分表。分庫分表也要好好想想。
     查了下,mysql 5.1里InnoDB引擎表空間最大容量為64TB。在查我們公司服務(wù)器配置表里硬盤,最低有100G的,最高600多G的。
     初步確定mysql的sharding和partition為這樣:不同物理機(jī)之間的sharding為分個(gè)大的id段,單個(gè)物理機(jī)上即單庫內(nèi)的如果表還是很大就做自己的partition。最終看上線怎么定,再定這個(gè)跨機(jī)sharding的id段長度,至于單機(jī)的partition,對(duì)代碼來說是不需要管的,運(yùn)維根據(jù)性能搞就行了。
     先簡單算下,每人100k,500w人一個(gè)sharding,需要大約500G空間。
四、其他架構(gòu)展望
    有單機(jī)內(nèi)容;需要聯(lián)網(wǎng)時(shí)才聯(lián)網(wǎng);弱聯(lián)網(wǎng)時(shí)弱聯(lián)網(wǎng),強(qiáng)實(shí)時(shí)時(shí)做強(qiáng)實(shí)時(shí)聯(lián)網(wǎng)。一直糾結(jié)這個(gè)會(huì)不會(huì)影響現(xiàn)在的存儲(chǔ)架構(gòu),但是想了下,不大影響,變的只是鏈接形式,玩家數(shù)據(jù)處理還是一樣的。

 

posted on 2013-12-13 15:58 Sheppard Y 閱讀(1719) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 設(shè)計(jì)架構(gòu)

<2013年12月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

導(dǎo)航

統(tǒng)計(jì)

留言簿(1)

隨筆分類(77)

隨筆檔案(58)

me

基友

同行

業(yè)界前輩

最新隨筆

搜索

積分與排名

最新評(píng)論

閱讀排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲国产精品久久久| 久久久久久网址| 欧美成人激情视频| 欧美国产91| 一区二区三欧美| 99国产精品久久久久老师| 国产亚洲欧美激情| 欧美成人激情在线| 欧美—级在线免费片| 亚洲一区二区综合| 午夜精品亚洲| 亚洲国产一区二区三区在线播| 制服丝袜亚洲播放| 亚洲欧美韩国| 曰韩精品一区二区| 日韩视频在线观看国产| 国产日韩视频一区二区三区| 麻豆国产精品777777在线| 欧美成人日本| 亚洲一区三区视频在线观看| 久久精品中文字幕一区二区三区 | 在线观看欧美精品| 香港久久久电影| 久久视频在线视频| 亚洲女爱视频在线| 久久综合狠狠综合久久综合88 | 国产精品男gay被猛男狂揉视频| 亚洲高清视频一区| 国产片一区二区| 久久成人羞羞网站| 久久激情五月丁香伊人| 欧美日韩视频一区二区三区| 亚洲美女在线一区| 亚洲五月婷婷| 久久日韩精品| 99在线热播精品免费99热| 久久精品一本| 亚洲三级视频| 亚洲一级电影| 一区久久精品| 久久夜色精品一区| 亚洲经典在线看| 午夜精品在线| 久久亚洲色图| 欧美一级午夜免费电影| 免费不卡亚洲欧美| 午夜在线不卡| 免费永久网站黄欧美| 亚洲欧美综合另类中字| 开元免费观看欧美电视剧网站| 亚洲一区国产精品| 男人的天堂亚洲在线| 久久久久久97三级| 国产精品国产三级国产普通话99| 亚洲第一久久影院| 国产欧美精品日韩精品| 一区二区三区精密机械公司| 亚洲精品黄色| 亚洲一二三级电影| 亚洲毛片视频| 老司机久久99久久精品播放免费| 久久精品最新地址| 国产麻豆日韩欧美久久| 99综合精品| 99re国产精品| 欧美福利视频| 欧美激情成人在线视频| 国内揄拍国内精品久久| 亚洲欧美日韩在线不卡| 亚洲欧美日韩人成在线播放| 欧美日韩情趣电影| 亚洲精品欧洲精品| 99re66热这里只有精品3直播| 免费av成人在线| 欧美成人一区二区三区| 一区视频在线看| 久久se精品一区精品二区| 久久九九久精品国产免费直播 | 国产精品电影网站| 亚洲国产精品一区二区久| 1024国产精品| 麻豆国产精品777777在线| 亚洲一区二区在线播放| 亚洲视频电影在线| 亚洲综合视频在线| 国产精品久久久久久久久婷婷 | 国产精品青草久久久久福利99| 亚洲成色777777女色窝| 亚洲人成人99网站| 欧美日韩国产成人在线免费| 一本到12不卡视频在线dvd| 亚洲午夜极品| 国产精品亚洲综合天堂夜夜 | 怡红院精品视频| 麻豆精品网站| 亚洲精品国精品久久99热| 亚洲夜间福利| 国产亚洲一区在线播放| 久久久久国产精品午夜一区| 亚洲国产成人av好男人在线观看| 99综合在线| 国产欧美日本| 香蕉成人啪国产精品视频综合网| 欧美一区二区三区日韩| 国产麻豆精品在线观看| 午夜精品久久久久久久99水蜜桃 | 怡红院av一区二区三区| 欧美激情视频给我| 亚洲性线免费观看视频成熟| 久久影音先锋| 国内外成人免费激情在线视频网站| 香蕉视频成人在线观看| 欧美在线黄色| 国产精品影院在线观看| 久久久久青草大香线综合精品| 蜜乳av另类精品一区二区| 亚洲三级视频| 国产区二精品视| 欧美激情精品久久久久久大尺度 | 欧美视频在线观看视频极品| 西西裸体人体做爰大胆久久久| 欧美1区2区| 午夜影院日韩| 亚洲精品在线观| 国产亚洲福利社区一区| 欧美日韩免费一区二区三区| 久久久不卡网国产精品一区| 日韩一二三在线视频播| 久久亚洲电影| 亚洲欧美日韩精品久久久| 亚洲电影免费观看高清完整版在线观看 | 一区二区三区中文在线观看| 欧美精品在线观看播放| 久久精品国产第一区二区三区最新章节 | 久久一本综合频道| 亚洲视频在线观看视频| 鲁大师影院一区二区三区| 亚洲在线国产日韩欧美| 亚洲精品影视| 在线不卡a资源高清| 国产日韩欧美精品一区| 欧美特黄a级高清免费大片a级| 美乳少妇欧美精品| 久久se精品一区精品二区| 亚洲欧美日本国产有色| 一本久久青青| 亚洲人成欧美中文字幕| 欧美亚洲三级| 亚洲高清久久网| 国产精品国产三级国产专区53| 欧美一区成人| 亚洲免费一在线| 欧美韩日一区| 久久精品在线观看| 在线亚洲激情| 激情成人综合| 国产精品第一页第二页第三页| 久久久久久国产精品mv| 亚洲免费视频在线观看| 亚洲精品国产精品国自产在线| 久久精品理论片| 99在线精品观看| 影音先锋日韩精品| 国产日韩成人精品| 国产精品videosex极品| 欧美二区视频| 久久久一二三| 欧美一区日韩一区| 亚洲午夜一级| 亚洲啪啪91| 欧美成人精品| 久久综合网色—综合色88| 久久久久久电影| 欧美一区二区三区播放老司机| 亚洲美女精品成人在线视频| 日韩一级黄色av| 亚洲一区不卡| 翔田千里一区二区| 亚洲视频axxx| 日韩一级黄色大片| 亚洲清纯自拍| 亚洲欧洲三级电影| 国产综合18久久久久久| 国产精品毛片高清在线完整版| 欧美日韩p片| 欧美激情a∨在线视频播放| 久久影视精品| 久久久噜噜噜久久狠狠50岁| 欧美亚洲一区在线| 欧美一区二区三区日韩| 欧美在线视频网站| 久久精品99国产精品酒店日本| 午夜精品视频在线观看| 久久久国产精彩视频美女艺术照福利| 久久只有精品| 欧美性大战久久久久久久| 国产精品成人在线| 精品999在线观看| 亚洲午夜日本在线观看| 久久久久久久97|