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

 

 

最近給自己換了個(gè)老板,忙了一段時(shí)間,所以有幾個(gè)月沒寫博客,今后還是要爭(zhēng)取多寫啊,呵呵。

 

換來新地方,第一件大的事情就是修改后端架構(gòu)和通信協(xié)議,架構(gòu)也設(shè)計(jì)得很普通,因?yàn)檫@邊的業(yè)務(wù)不需要太過復(fù)雜的后端,所以就簡(jiǎn)單設(shè)計(jì)了一下,基本是參照web的模型,符合我一貫的向web學(xué)習(xí)的思想,弄了個(gè)gate管理入口,相當(dāng)于web下的webserver,后端其他服務(wù)器掛在該gate下,相當(dāng)于web模型下的appserver,或者fastcgi模型的fastcgi進(jìn)程,gate上管理連接、合法性檢測(cè)、登錄、加密、壓縮、緩存。Gate和后端通信本來想?yún)⒄?/span>fastcgi協(xié)議,但看了之后覺得fastcgi協(xié)議還是復(fù)雜了,所以就設(shè)計(jì)了一個(gè)更簡(jiǎn)單的協(xié)議,gate和后端server之間可傳遞key:value型數(shù)據(jù)對(duì),value不局限于字符串,可以是任意數(shù)據(jù),這樣基本滿足了當(dāng)前的需求,第一版放上去之后也運(yùn)行良好,到今天也基本持續(xù)穩(wěn)定運(yùn)行快一個(gè)月了,沒出過什么事情。由于在gate這邊緩沖了job管理,所以后端server升級(jí)很方便,隨時(shí)可關(guān)閉更新,gate會(huì)在窗口時(shí)間內(nèi)將未執(zhí)行完成的任務(wù)重新提交,有此功能可放心大膽的升級(jí)后端,這個(gè)月這樣的工作做了幾次,在架構(gòu)修改之前這樣的事情幾乎是不敢做的,因?yàn)橐坏┥?jí)所有用戶全部斷開連接,而現(xiàn)在用戶則基本無感覺。Gate上的緩存層為后端減少了一些壓力,這個(gè)緩存是按照請(qǐng)求的md5key做的,并根據(jù)協(xié)議配置時(shí)效,有此cache后端大多數(shù)服務(wù)可不設(shè)計(jì)緩存或降低緩存設(shè)計(jì)的復(fù)雜度。Gate上針對(duì)敏感數(shù)據(jù)統(tǒng)一做了加密處理,主要是辛辛苦苦整理的數(shù)據(jù)不能輕易讓競(jìng)爭(zhēng)對(duì)手竊去了,呵呵。Gate也做了壓縮,現(xiàn)在是針對(duì)>=128長(zhǎng)度的包進(jìn)行壓縮,使用了qlz,壓縮效率還是很不錯(cuò)的,速度很快。目前gate后端掛接的既有win上的server也有linux上的server,這是一開始就這么規(guī)劃的,現(xiàn)在看來當(dāng)初的目的達(dá)到了,混合發(fā)揮各自的優(yōu)勢(shì),有的項(xiàng)目在原有系統(tǒng)上跑得好好的,沒必要重新開發(fā)嘛。

 

協(xié)議設(shè)計(jì)上本來我是計(jì)劃二進(jìn)制混合json格式,以二進(jìn)制為主,但嘗試了一個(gè)協(xié)議之后發(fā)現(xiàn),這邊的小伙子們對(duì)直接操縱內(nèi)存普遍技術(shù)不過關(guān),他們大多是從java開始的,后來才學(xué)習(xí)c,對(duì)字符串用得很熟練,權(quán)衡之下采用了json為主,混合二進(jìn)制為輔的方案,這樣修改之后的協(xié)議和他們之前使用的xml類似,就是更小更緊湊一點(diǎn),使用方法上很類似,從現(xiàn)在的效果看還行,使用json格式為主的協(xié)議當(dāng)然不能跟使用pb之類的相比,解析效率上大約單線程每秒解析20來萬10個(gè)obj的對(duì)象,速度上不算太快但也不算太慢,對(duì)付一秒至多幾萬數(shù)據(jù)包的應(yīng)用來說還是夠的,因?yàn)楝F(xiàn)在cpu計(jì)算能力普遍過剩,使用json的另個(gè)好處就是增刪字段很方便,各個(gè)版本之間不需要太考慮版本的問題,要是全用二進(jìn)制格式就要麻煩很多了,在使用壓縮之后,目前的json格式協(xié)議比之前的xml協(xié)議減少了2/3的帶寬使用,總體效果還是可以的。使用json調(diào)試也很方便,我提供了一個(gè)工具,寫后端的就直接用該工具按照json格式收發(fā)數(shù)據(jù),無需等client開發(fā)好了再去做后端,之后做client也很方便,請(qǐng)求發(fā)過去之后返回來的就是標(biāo)準(zhǔn)的json格式數(shù)據(jù),同樣的解析方法,每個(gè)不同的應(yīng)用就按照不同的格式處理下即可,和web等模塊交互也很方便,這可算是額外的好處了。

 

總之,雖然json格式存儲(chǔ)效率和解析效率跟二進(jìn)制方式還差半個(gè)量級(jí)到一個(gè)量級(jí),但合理使用還是可以的,特別是跟xml相比優(yōu)勢(shì)很明顯,權(quán)衡使用吧,當(dāng)然追求極致效率可能還是用pb之類的更合適一些,或者自己設(shè)計(jì)tlv格式。

 

Posted on 2011-01-11 13:33 袁斌 閱讀(2570) 評(píng)論(3)  編輯 收藏 引用 所屬分類: c++

Feedback

# re: 最近項(xiàng)目架構(gòu)及協(xié)議決策  回復(fù)  更多評(píng)論   

2011-01-11 18:11 by true
經(jīng)驗(yàn)之談,我之前有個(gè)服務(wù)器內(nèi)部的交互接口,就是傳的std::map<string,string>,文本協(xié)議的動(dòng)態(tài)性方面有優(yōu)勢(shì)

# re: 最近項(xiàng)目架構(gòu)及協(xié)議決策  回復(fù)  更多評(píng)論   

2011-01-14 13:03 by ouyang
怎么做到更新時(shí)用戶不斷線的?架構(gòu)上是怎么安排的?最好有點(diǎn)圖片輔助一下,這塊沒看太懂。謝謝!

# re: 最近項(xiàng)目架構(gòu)及協(xié)議決策  回復(fù)  更多評(píng)論   

2011-01-14 13:09 by 袁斌
@ouyang
gate升級(jí)還是會(huì)斷線啊,后端服務(wù)器升級(jí)用戶不斷線,因?yàn)間ate維護(hù)和客戶端的連接,gate做了job的管理,在后端服務(wù)器升級(jí)好之后又重新分派job,這樣給用戶的感覺就是執(zhí)行稍慢了一點(diǎn)。
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            国产日韩av一区二区| 国产亚洲亚洲| 欧美黑人在线播放| 国产亚洲精品aa午夜观看| 亚洲国产精品综合| 在线欧美日韩精品| 久久不射网站| 欧美中文字幕在线观看| 欧美午夜视频在线| 日韩视频精品在线| 亚洲乱码国产乱码精品精| 久久久久一区| 老司机免费视频久久| 国产精品福利影院| 在线亚洲一区二区| 亚洲图片在线| 欧美视频福利| 一区二区欧美在线| 亚洲欧美精品| 国产精品免费电影| 亚洲一区二区精品| 欧美在线欧美在线| 国产欧美日韩综合一区在线观看| 一区二区日韩精品| 亚洲影视九九影院在线观看| 欧美日韩精品伦理作品在线免费观看 | 久久免费国产精品| 久久综合影视| 在线观看欧美日韩国产| 久久久综合网站| 欧美1区2区| 亚洲伦伦在线| 国产精品狠色婷| 午夜国产精品视频| 久久久综合香蕉尹人综合网| 经典三级久久| 免费看的黄色欧美网站| 亚洲欧洲日夜超级视频| 亚洲一区二区三区免费在线观看| 欧美日韩一级片在线观看| 亚洲影院色在线观看免费| 久久国产一区二区| 亚洲国产精品久久久久| 欧美女人交a| 亚洲一区一卡| 欧美成黄导航| 亚洲一区二区精品视频| 国产亚洲欧洲997久久综合| 久久亚洲综合色| 日韩亚洲精品在线| 久久久精彩视频| 亚洲美洲欧洲综合国产一区| 欧美性开放视频| 久久久久综合| 99国产精品| 另类国产ts人妖高潮视频| av成人黄色| 国产婷婷97碰碰久久人人蜜臀| 狂野欧美激情性xxxx| 一本到12不卡视频在线dvd| 久久美女艺术照精彩视频福利播放| 亚洲激情成人在线| 国产日产欧产精品推荐色 | 亚洲精品国产精品国自产在线| 亚洲综合视频在线| 亚洲电影一级黄| 国产精品mm| 女主播福利一区| 小嫩嫩精品导航| 亚洲每日更新| 欧美a级大片| 欧美一区二区三区在线| 亚洲精品视频在线播放| 国产九九视频一区二区三区| 欧美高清视频在线| 久久久xxx| 亚洲一级在线| 亚洲美女av黄| 亚洲电影在线观看| 久久天堂av综合合色| 亚洲一区二区在线免费观看视频| 在线精品视频一区二区三四| 国产精品日韩精品欧美精品| 欧美啪啪一区| 免费在线观看成人av| 久久国产精品72免费观看| 国产精品99久久久久久久女警 | 亚洲大片一区二区三区| 国产精品系列在线播放| 欧美日韩国产不卡| 欧美国产日产韩国视频| 久久综合久色欧美综合狠狠| 欧美一区二区精品在线| 在线综合视频| 日韩午夜在线| 亚洲剧情一区二区| 亚洲精品视频啊美女在线直播| 美女精品视频一区| 久久久久国产精品麻豆ai换脸| 午夜精彩国产免费不卡不顿大片| 99视频精品全部免费在线| 亚洲激情精品| 亚洲日本va午夜在线电影| 在线免费观看日本一区| 影音先锋久久| 伊人狠狠色丁香综合尤物| 国内精品国语自产拍在线观看| 国产情人综合久久777777| 国产精品午夜av在线| 国产精品五区| 国产亚洲欧美日韩在线一区 | 国产一区二三区| 国内精品久久久久影院优| 国产视频一区在线| 国产一区二区三区最好精华液| 国产热re99久久6国产精品| 国产欧美精品xxxx另类| 国产亚洲欧美另类一区二区三区| 国产啪精品视频| 黄色综合网站| 91久久线看在观草草青青| 亚洲美女电影在线| 这里只有精品视频| 性欧美18~19sex高清播放| 久久精品首页| 欧美成人a∨高清免费观看| 亚洲大胆美女视频| 99国产精品自拍| 亚洲欧美久久久| 久久久久久久一区二区三区| 免费观看在线综合色| 欧美日韩一区二| 国产伦精品一区二区三区在线观看 | 久久偷看各类wc女厕嘘嘘偷窃| 老司机精品导航| 亚洲精品乱码| 午夜精品www| 你懂的视频欧美| 欧美午夜国产| 在线观看国产精品淫| 99热精品在线| 久久精品99国产精品| 欧美国产三级| 亚洲神马久久| 久久综合伊人77777| 欧美视频中文字幕在线| 韩日视频一区| 亚洲一区二区久久| 六月婷婷一区| 99日韩精品| 麻豆9191精品国产| 国产精品系列在线| 亚洲欧洲一二三| 久久久精品国产免大香伊| 亚洲人www| 久久精品视频在线| 欧美性一区二区| 亚洲区一区二| 老司机免费视频一区二区三区| 亚洲毛片一区| 你懂的一区二区| 国产一二精品视频| 亚洲自拍偷拍福利| 欧美电影免费观看大全| 午夜亚洲精品| 国产精品福利片| 99国产精品视频免费观看| 久久久久久亚洲综合影院红桃| 99国产精品99久久久久久粉嫩| 老鸭窝毛片一区二区三区| 国产日韩精品视频一区| 国产精品99久久久久久久久| 欧美韩国在线| 久久久久国产精品一区三寸| 国产精品福利影院| 亚洲视频精品| 亚洲日本中文字幕区| 免费欧美网站| 亚洲激情国产| 欧美风情在线| 老司机午夜免费精品视频 | 在线观看日韩av电影| 性欧美8khd高清极品| 亚洲最新合集| 国产精品久久久免费| 亚洲一二三区在线观看| 亚洲一区二区三区免费观看| 精品成人久久| 久久精品日产第一区二区三区| 日韩一二三区视频| 欧美日韩另类丝袜其他| 亚洲日韩成人| 亚洲成色999久久网站| 蜜桃av久久久亚洲精品| 一区二区三区自拍| 牛牛影视久久网| 老司机aⅴ在线精品导航| 亚洲大片精品永久免费| 亚洲电影免费观看高清完整版在线观看 | 妖精成人www高清在线观看|