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

Fork me on GitHub
隨筆 - 215  文章 - 13  trackbacks - 0
<2017年5月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910


專注即時通訊及網(wǎng)游服務端編程
------------------------------------
Openresty 官方模塊
Openresty 標準模塊(Opm)
Openresty 三方模塊
------------------------------------
本博收藏大部分文章為轉(zhuǎn)載,并在文章開頭給出了原文出處,如有再轉(zhuǎn),敬請保留相關(guān)信息,這是大家對原創(chuàng)作者勞動成果的自覺尊重!!如為您帶來不便,請于本博下留言,謝謝配合。

常用鏈接

留言簿(1)

隨筆分類

隨筆檔案

相冊

Awesome

Blog

Book

GitHub

Link

搜索

  •  

積分與排名

  • 積分 - 220943
  • 排名 - 117

最新評論

閱讀排行榜

https://www.zhihu.com/question/20405300?sort=created&page=1
慶亮,廣州明朝,關(guān)注erlang/c/hadoop,輕微代…
Lonng知乎用戶、liberal 等人贊同
@龐巍偉@貓糧 等同學的回答基本上都是點中關(guān)鍵點了,但是部分內(nèi)容需要糾正下。

作為算是第一批Erlang應用于webgame(說是始作俑者也不為過)的家伙,補充點當年的實際決策情況,順便糾正幾個錯誤的認識,也算是自黑了不少:

PS:
1. 以下內(nèi)容都是實際在09-10年工作期間的真實情況,但是會盡量少八卦
2. 選擇什么并不一定重要,做出選擇才重要
3. 文中如果戳中某些人痛點請不要罵娘
4. 目前還在游戲行業(yè),頁游、手游領(lǐng)域都有涉及,Erlang也一路堅持了下來,大愛!
5. 沒深入研究過Erlang的同學,請不要瞎評論了,負點責任好嗎?搞得好像自己是個神,不管什么語言寫兩行就知道精髓了
6. 這不是個語言爭論的回復,請勿討論誰更好,但是歡迎討論各個語言的優(yōu)劣勢以及如何揚長避短

  1. 頁游07-09,草根的春天
國內(nèi)頁游從07年其實就有崛起之勢,特別是“五分鐘”團隊推出“偷菜”之后,大眾對游戲的態(tài)度慢慢開始改變,由抵制、打擊變?yōu)楹侠淼慕邮堋?然而由于webgame門檻低、前期市場規(guī)模小、天生基于web,造成了早期的webgame很多都是基于PHP、Java、ASP這些在傳統(tǒng)端游開發(fā)者看起來很不靠譜的編程語言(在珠三角以PHP最為主流),例如縱橫天下、熱血三國、商業(yè)大亨、彈彈堂、明朝時代等;順便提下漢森的《傾城》,Java前后端,在當時的視覺效果真的很好,可惜內(nèi)部出了問題,源碼泄露、私服泛濫。

明朝時代截圖:


09年我來到《明朝時代》團隊時,覺得:我靠,太cool了,PHP居然能夠?qū)懹螒颍。。?居然!!!
===
呵呵,很多同學可能就會覺得“那是你沒見識,游戲的技術(shù)早就成熟了,你居然還在佩服這種低級玩意”;對,當時的確是沒有見識;但是更多的是當年作為一個新手(只有PHP自學的經(jīng)驗)對技術(shù)的渴望 --- 技術(shù)追求的狂熱是被不應該被語言所限制的,就像愛情不分種族。但是不少同學最覺得只有學習C++才是有追求的【不喜勿噴,你可能不是,但是你看看周圍吧,多數(shù)的C++同學是這么思考的,等會我還會提個關(guān)于C++的八卦】。

這個時期頁游的特點:技術(shù)門檻底、SLG橫行、品質(zhì)離端游差距巨大;由于這些原因,端游方面的人才基本都不愿意去搞頁游,非常能夠理解這樣的想法,因為感覺起來是一種技術(shù)倒退;不過就市場來說,產(chǎn)品需求至上,技術(shù)是否先進不能代表一切【理性思考方式之一:不要用觀點A的正確來證明B的錯誤】。


2. 09-10,我們遇到了問題,認識了Erlang,選擇了Erlang

在2009年大概是8、9月的樣子,我們看到一款游戲叫做《戰(zhàn)斧》(2.5D即時戰(zhàn)斗網(wǎng)頁游戲《戰(zhàn)斧OL》精美截圖曝光),這是一款09年的基于Flash的網(wǎng)頁ARPG,當時我們看到demo視頻的時候以為是一款客戶端(再次原諒我的淺薄,當時真的沒有想到網(wǎng)頁上可以做出來實時戰(zhàn)斗游戲),當時的心情是:我靠,太cool了(=_=!),我們TMD還在搞什么鳥的SLG,技術(shù)太落后了!!!



2009年10月,《明朝時代》由于技術(shù)改進,引入了Ejabberd(erlang著名的開源聊天服務套件)作為游戲的聊天服務器,但是在使用過程中遇到了些技術(shù)問題,高潮來了:我們在不懂Erlang的情況下,嘗試修改Ejabberd的源碼,居然解決了我們的性能需求!當時我一方面佩服我當時的老大,一方面驚異于Erlang的神奇:要是C++端,有個10W行代碼,你敢隨便改嗎?

2009年11月,ECUG在杭州召開,我們幾個PHP都跑去膜拜各路大神,順便請教一下他們在Erlang方面的看法。 期間結(jié)識了 @余鋒 (不用介紹了吧) 立濤 @趙東煒 金尹 (這兩位是《Erlang程序設計》的譯者) @許式偉 (許總當年還沒有找到golang) 老范(erlbattle - 惡狼戰(zhàn)役->基于Erlang語言的實時技術(shù)學習平臺[Erl Base actual time technic learnning env.]) 侯明園、李杰、崔博、Python大媽(一開始沒認出來)一大批牛人以及周愛民老師。云風當時路過了下,沒有機會深入請教。



這次技術(shù)會議應該是我目前為止收貨最大的一次,當時聽了余老大的PPT基本一遍就記住了(不是懂了),后來請教了以上諸位牛人的建議(當然主要還是余老大給的信心),各位也坦言用Erlang必然會遇到些問題,但是說實話,哪門子語言對于我們來說不會遇到問題呢?因此考慮了如下幾點之后,我們選擇了Erlang作為服務端語言:
a. Erlang的入門真的很簡單(有同學說不簡單,那我沒辦法)
b. 不懂C++,Java呢又覺得臃腫
c. PHP當時有團隊驗證搞ARPG不太適合(c擴展方式我們也搞不定)
d. 網(wǎng)頁游戲當時“唯快不破”【當時的市場決定的】
e. 熱更新對于在測試、技術(shù)能力上偏弱的一幫人來說,吸引力太大
f. 1:1模型對于編程復雜度的降低有非常直接的幫助【呵呵,麻煩沒有實踐過的同學不要瞎批評好嗎?有時真的不太懂,你都沒有搞過,怎么就敢理直氣壯】
g. 天生分布式【誰用誰知道】

-----
根據(jù) @bhuztez 的指正,用M:N的說法的確更合適,1:1其實是粒度的不同產(chǎn)生的說法,例如一個玩家一個網(wǎng)絡進程,就是1:1,但是一個玩家一個進程就不合適了,這個時候可能是1:N了。

八卦一:技術(shù)會議本身是開放的,大家有意見討論是正常的;ECUG杭州期間,Erlang主題的時候(忘記是哪位的主題了),兩位C++同學一開始是各自向演講者提問的,后來兩位直接爭起來了;隨著接觸C++同學越來越多,發(fā)現(xiàn)C++同學較為容易鄙視其他C++同學的做法,總是認為自己的做法才是符合C++的精髓;結(jié)果呢,高手本來就少,還很容易有鄙視鏈。 這個也是我對C++感覺心累的原因之一(我C++沒學好,就不去評論C++本身了)。

3. 10年,踩坑、填坑Erlang

2010.1.1 我們團隊4個人沒有放假,過來公司寫代碼,因為實在太興奮了---對于沒有寫過ARPG的人來說,這實在太讓人激動了!
我們參考了RabbitMQ的代碼結(jié)構(gòu)和網(wǎng)絡部分把框架搭建起來了,基本上是三天左右,這期間還一邊在看書;使用了google protobuff作為通訊協(xié)議,順便修正了部分protobuff第三庫的一些bug,花了一周多時間;然后陸續(xù)花了2、3周的時間去做了幾個簡單功能,創(chuàng)建角色、登陸、場景、組隊、怪物、戰(zhàn)斗,我們把這個游戲demo稱為mgee(mingchao game engine of erlang version,哈哈,好掉渣的英語,當時以為自己能搞個引擎,其實是無知者無畏),至于流傳到了多少地方應該沒法統(tǒng)計了,有幾個三本學校開Erlang課程用的就是mgee作為基礎。

到了2010.2月X號,我忘記了,反正后天就是年30了,mgee作為demo已經(jīng)完成了使命,我們壓測了一下發(fā)現(xiàn)只有500的承載能力,這個促使我們?nèi)チ私飧嗟挠螒蚣軜?gòu)知識。

2010.3月,春節(jié)回來,我們團隊到處找人請假,當時征途團隊的技術(shù)負責人過來一次過廣州,但是比較可惜沒能有機會當面請教;后來呢,在網(wǎng)上找到一些資料,講的是征途、天龍、魔獸世界等游戲的架構(gòu)(有些是作者猜的),附上一些圖給大家看下我們當年看到的資料:

天龍服務端架構(gòu)思路:
bigworld:



QQ游戲大廳:

基于這樣的資料和我們自己的經(jīng)驗,我們做了《明朝傳奇》,在線最高到了3100。這期間我們搞明白了1:1該怎么用,mnesia該怎么用,哪些東西是Erlang可以搞得定的(除了怪物尋路,其他邏輯都是基于Erlang),最終明白了一個道理:用不用的好看你個人,語言的約束對群體有效,對個體不一定有效(類似統(tǒng)計與概率),我們從來不鼓吹別人去用Erlang(大家為什么用Erlang,我們只能算是開了頭,不是鼓吹者),我們只是告訴你,用Erlang也可以用得好。

4. 2011-2012年,Erlang服務端框架簡化

當時幾個事情促使了我們再往前一步:
a. 明朝傳奇的代碼我們搞的太復雜,開發(fā)和運行效率都不夠高,代碼難以掌握
b. 當時光環(huán)的 @達達來討論如何一機多服,給我們帶來了思路上的很大沖擊:成本控制
c. 頂端的Erlang不好培養(yǎng)

基于上面的原因,我們希望新的erlang服務端框架有如下特征:
a. 簡單、簡單到發(fā)指, @謝廷寶 當時大寶推薦了一種服務端設計的簡單標準:有語言經(jīng)驗的人就能看得懂(并非100%掌握),也就是說看到API知道怎么寫功能。 這里可能有人會吐槽了,你把框架搞的這么強,那些新人能學到什么? 呵呵,源碼在內(nèi)部是100%開放,每周都有內(nèi)部分享來分析現(xiàn)有的實現(xiàn)的優(yōu)缺點,每個人都可以在經(jīng)過審查后修改核心實現(xiàn),為什么會限制新人呢?總有些人討論問題喜歡偷換概念,也喜歡指責別人自己做不到的事情。

b. 性能高,上面龐巍偉同學提到的2000在線是不對的,當時捷游的夢幻飛仙過了4700(不分線、回合);而我們的《仙落凡塵》則是不分線ARPG的情況下到了4300(4399 1服),就當時的CPU和內(nèi)存使用情況來說,1/3的資源不到。(當時沒有辦法了,游戲地圖設計的不夠大,玩家進入游戲后實在太擠了)

在原則a的指導下,新人花三天看書、3天寫點入門代碼,1周的確是可以去寫點簡單的功能的。(在珠三角的同學歡迎當面來討論驗證)但是如果你要求1周就能多么熟悉、深入,這誰也做不到。

4. 2013-2015,Erlang在內(nèi)部算是真正的落地

真要讓一門技術(shù)變?yōu)榻鉀Q方案,光靠堅持不夠,我們在內(nèi)部也做了一些事情來幫助Erlang在內(nèi)部至少可以形成簡單的生態(tài)群:
a. 成立虛擬的Erlang框架引擎組,負責在各個項目組之間同步優(yōu)秀代碼、統(tǒng)一基礎框架、剝離業(yè)務抽象邏輯【由于這邊的文化氛圍,推進起來相對容易】
b. 剝離公用非游戲?qū)S梅眨鏼log(通用日志服務)、mbd(通用大數(shù)據(jù)服務)、mchat(通用聊天監(jiān)控服務)、mservice(通用托管服務),提供給各部門各項目使用

這樣,配合少量開源庫,基本上能夠做到快速穩(wěn)定高效,也不會那么容易遇到技術(shù)瓶頸,技術(shù)的應用方向也不會太狹隘。

5. 一點總結(jié)

a. 用了Erlang接近5年,越是深入越是覺得Erlang神奇,集中點還是Erlang的設計哲學,這里推薦一篇文章: Erlang的調(diào)度原理(譯文)來了解下。
b. 我從c/php/erlang一路走過來,算是對編譯型、腳本、函數(shù)式語言有個比較橫向的了解,推薦時間較寬裕的同學深入學學Erlang,不一樣的哲學會極大的豐富你的世界觀,影響你的方法論(好吧,看起來有點雞湯了)
c. 像分布式、熱更新等都是非常重要的基礎設施,真正的高手自然不需要,但是你是否需要這些還是可以判斷的(多數(shù)人并非天才)
d. 感謝 @余鋒 這樣的人一直在堅持,總有人會讓你覺得感動,感動于他們的堅持、分享,世界并非非黑即白,而是多姿多彩。Erlang、C++、C、PHP、Scala都是一部分。
e. 你或者你們團隊用不用Erlang,要看你或者你們團隊的經(jīng)驗、產(chǎn)品需要、職業(yè)發(fā)展、成本等來綜合考慮,并不是一句話能夠說明的清楚的。而我只是想說一般來說,堅持能解決大部分問題,沒有多少所謂的彎路,Erlang和C++等語言誰好誰壞也不是一句話能定論的。

6. 其他補充


a. 當年的游戲服務端demo:qingliangcn/mgee · GitHub
posted on 2016-03-14 17:12 思月行云 閱讀(2291) 評論(0)  編輯 收藏 引用 所屬分類: Erlang
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美一级淫片播放口| 国产精品久99| 亚洲你懂的在线视频| 亚洲天堂成人| 亚洲制服少妇| 性色一区二区三区| 久久另类ts人妖一区二区| 久久在线观看视频| 欧美区在线播放| 国产精品一二| 国产日韩欧美一区在线| 韩国成人精品a∨在线观看| 亚洲日韩欧美视频| 午夜精品久久久久影视| 久久在线免费观看| 亚洲欧洲在线免费| 亚洲在线视频| 久久综合网络一区二区| 欧美裸体一区二区三区| 国产日韩精品一区| 亚洲另类在线一区| 欧美在线亚洲| 99精品99| 欧美黄色aaaa| 国模精品娜娜一二三区| 亚洲精品在线电影| 老巨人导航500精品| 99热这里只有成人精品国产| 久久亚洲精品伦理| 国产精品欧美日韩久久| 亚洲人久久久| 久久久久久久久久看片| 99国产精品99久久久久久| 美女国内精品自产拍在线播放| 国产老女人精品毛片久久| 亚洲一级黄色| 亚洲精品自在久久| 蜜臀av性久久久久蜜臀aⅴ四虎| 国产亚洲福利一区| 亚洲小视频在线观看| 亚洲经典三级| 欧美电影免费观看| 在线国产日韩| 另类国产ts人妖高潮视频| 午夜精品99久久免费| 国产精品久久久一本精品| 日韩视频免费看| 一区二区三区四区在线| 久久久久免费视频| 国产午夜精品一区理论片飘花 | 欧美国产第二页| 亚洲男同1069视频| 欧美精品国产精品| 亚洲激情视频在线| 免费日本视频一区| 久久精品国产免费| 国产三区二区一区久久| 久久本道综合色狠狠五月| 亚洲欧美综合网| 国产在线不卡视频| 久久综合五月| 美女精品在线观看| 亚洲国产激情| 亚洲第一色在线| 欧美freesex8一10精品| 亚洲日本中文字幕| 亚洲人成在线影院| 欧美日韩直播| 午夜精品久久久久久99热软件 | 亚洲一区国产一区| 国产精品久久777777毛茸茸| 亚洲一区日韩在线| 亚洲摸下面视频| 狠狠干狠狠久久| 亚洲国产欧美一区二区三区丁香婷| 久久婷婷蜜乳一本欲蜜臀| 亚洲国产精品第一区二区三区| 亚洲福利在线看| 欧美日韩国产精品一区| 午夜在线不卡| 久久先锋影音| 99在线精品免费视频九九视| 在线一区视频| 一区二区亚洲精品| 亚洲黄色有码视频| 国产精品日韩一区二区| 久久综合伊人77777尤物| 欧美精品三区| 久久精品国产免费观看| 农夫在线精品视频免费观看| 亚洲女人av| 久久久久久久一区| 亚洲一区二区成人在线观看| 久久国产色av| 一本久道久久综合中文字幕| 亚欧成人在线| 99在线精品免费视频九九视| 久久成人免费| 亚洲一区二区三区四区五区午夜 | 欧美日韩精品一区二区| 先锋影音久久| 欧美大胆a视频| 久久久.com| 欧美性jizz18性欧美| 欧美二区视频| 国产婷婷色一区二区三区在线| 91久久久在线| 在线观看亚洲精品| 亚洲欧美日韩国产综合| 亚洲国产美女| 性色av一区二区三区在线观看| 夜夜夜久久久| 噜噜噜躁狠狠躁狠狠精品视频| 久久av一区二区三区漫画| 欧美日产国产成人免费图片| 欧美 日韩 国产一区二区在线视频 | 亚洲一区中文字幕在线观看| 男男成人高潮片免费网站| 久久久久久久综合| 国产精品欧美在线| 亚洲理伦在线| 亚洲精品视频免费| 久久久最新网址| 榴莲视频成人在线观看| 国产亚洲精品福利| 亚洲一区二区免费视频| 亚洲特级毛片| 欧美特黄a级高清免费大片a级| 亚洲国产专区校园欧美| 激情欧美国产欧美| 久久精品国产亚洲a| 久久综合狠狠综合久久激情| 国产一在线精品一区在线观看| 亚洲一二三区在线| 午夜欧美大片免费观看 | 国产精品视频久久久| 一区二区精品| 亚洲中午字幕| 国产日韩欧美日韩| 久久激情五月丁香伊人| 久久久久久久性| 狠狠干综合网| 欧美大学生性色视频| 亚洲欧洲一区二区在线观看| 99视频+国产日韩欧美| 欧美成人精品在线播放| 最新国产精品拍自在线播放| 亚洲视频www| 国产精品视频一二| 欧美亚洲日本网站| 欧美激情精品久久久六区热门 | 欧美日韩大陆在线| 亚洲麻豆av| 欧美一区二视频在线免费观看| 国产一区二区欧美| 蜜桃av一区二区在线观看| 亚洲乱码国产乱码精品精98午夜| 亚洲女性喷水在线观看一区| 麻豆视频一区二区| 亚洲精品久久嫩草网站秘色| 欧美人在线视频| 亚洲一区二区三区四区五区午夜 | 91久久夜色精品国产九色| 欧美黑人国产人伦爽爽爽| 亚洲视频一区在线| 免费中文日韩| 亚洲一区二区三区视频播放| 黄色免费成人| 国产精品高清在线| 久久综合伊人77777尤物| 一本久久a久久免费精品不卡| 久久精品综合一区| 在线综合视频| 亚洲第一中文字幕在线观看| 国产精品亚洲а∨天堂免在线| 牛夜精品久久久久久久99黑人| 午夜精品国产精品大乳美女| 最近中文字幕日韩精品| 久久久精品国产一区二区三区| 一区二区高清| 亚洲精品1区2区| 国模叶桐国产精品一区| 欧美四级在线观看| 美日韩丰满少妇在线观看| 午夜国产欧美理论在线播放 | 欧美jizz19性欧美| 亚洲欧美另类综合偷拍| 亚洲精品视频免费| 欧美国产视频在线| 久久久久久亚洲精品不卡4k岛国| 亚洲一区二区三区777| 91久久久久久久久久久久久| 国产一区二区三区四区五区美女| 国产精品不卡在线| 欧美刺激性大交免费视频| 欧美一区国产在线| 亚洲欧美日韩一区在线| 亚洲天堂成人在线观看| 亚洲免费黄色| 亚洲国产成人久久综合一区|