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

戰(zhàn)魂小筑

討論群:309800774 知乎關(guān)注:http://zhihu.com/people/sunicdavy 開(kāi)源項(xiàng)目:https://github.com/davyxu

   :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
  257 隨筆 :: 0 文章 :: 506 評(píng)論 :: 0 Trackbacks

以下比較的基礎(chǔ)都是基于一種編程語(yǔ)言+一定的第三方或者自己編寫(xiě)的網(wǎng)絡(luò)庫(kù)和底層進(jìn)行的,Skynet稍微特殊,但總體比較合適放到比較中來(lái)

C#

開(kāi)發(fā)效率:Windows下可以通過(guò)VisualStudio進(jìn)行開(kāi)發(fā),其他平臺(tái)可以使用MonoDevelop,非常方便

運(yùn)行效率:JIT的性能優(yōu)化比較到位,能適應(yīng)90%性能環(huán)境

部署便捷性:可以通過(guò)交叉編譯生成其他平臺(tái)的可執(zhí)行文件,通過(guò)mono運(yùn)行可執(zhí)行文件

調(diào)試便捷性:VisualStudio和MonoDevelop調(diào)試均很方便, 還可遠(yuǎn)程調(diào)試

上手度:對(duì)C系語(yǔ)言熟悉的幾天就可上手

熱更新:可以通過(guò)DLL方式進(jìn)行

Web對(duì)接:可做,代碼比較啰嗦

崩潰處理:可通過(guò)try catch捕獲錯(cuò)誤

網(wǎng)絡(luò)庫(kù)編寫(xiě)難度:一般,需注意gc問(wèn)題

第三方網(wǎng)絡(luò)庫(kù)及框架數(shù)量:一般

 

Golang

開(kāi)發(fā)效率:高

運(yùn)行效率:并發(fā)上非常有優(yōu)勢(shì),對(duì)CPU利用率比較高,原生運(yùn)行無(wú)虛擬機(jī)

部署便捷性:一次編譯到處運(yùn)行,無(wú)任何運(yùn)行庫(kù)依賴

調(diào)試便捷性:實(shí)際操作中,單線程掛接調(diào)試器可行, 但變量顯示不正確,開(kāi)發(fā)期基本采用日志方式進(jìn)行查錯(cuò)

上手度:語(yǔ)言簡(jiǎn)單,特性少, 新手1周能貢獻(xiàn)代碼

熱更新:無(wú)法進(jìn)行熱更新,語(yǔ)言無(wú)法編譯為DLL,也不支持DLL加載(linux平臺(tái)的.so加載忽略不計(jì))

Web對(duì)接:非常方便, 代碼精簡(jiǎn)

崩潰處理:崩潰后以命令行方式打印出棧,程序內(nèi)可以捕獲任何崩潰錯(cuò)誤并繼續(xù)運(yùn)行

網(wǎng)絡(luò)庫(kù)編寫(xiě)難度:簡(jiǎn)單,比C socket更簡(jiǎn)單

第三方網(wǎng)絡(luò)庫(kù)及框架數(shù)量:偏少

 

Skynet(lua+C)

開(kāi)發(fā)效率:基于動(dòng)態(tài)語(yǔ)言的開(kāi)發(fā)初次寫(xiě)比較快,后期維護(hù)和重構(gòu)會(huì)耗費(fèi)一定的時(shí)間在查錯(cuò)上

運(yùn)行效率:基于lua jit的運(yùn)行效率還是能接受的

部署便捷性:方便, 只有底層修改需要重新編譯, 大部分時(shí)間只用更新lua文件

調(diào)試便捷性:不是很方便,基于日志方式進(jìn)行查錯(cuò)

上手度:lua語(yǔ)言特性有部分和C系語(yǔ)言有一定差異,基于Actor模型的思想學(xué)習(xí),適應(yīng)需要耗費(fèi)一定的時(shí)間

熱更新:類似于Erlang,可精確到函數(shù)級(jí)的熱更新

Web對(duì)接:有一些http支持,通過(guò)社區(qū)慢慢進(jìn)行完善

崩潰處理:lua天生可以捕獲錯(cuò)誤

網(wǎng)絡(luò)庫(kù)編寫(xiě)難度:自帶,無(wú)需編寫(xiě)

第三方網(wǎng)絡(luò)庫(kù)及框架數(shù)量:通過(guò)社區(qū)慢慢完善

 

C++

開(kāi)發(fā)效率:編譯慢,文件多,通用庫(kù)少

運(yùn)行效率:native速度標(biāo)桿

部署便捷性:編寫(xiě)各類的make門(mén)檻較高

調(diào)試便捷性:可通過(guò)VisualStudio進(jìn)行Windows平臺(tái)調(diào)試

上手度:2~3年經(jīng)驗(yàn)的熟手仍然會(huì)寫(xiě)出崩潰和泄露代碼

熱更新:可通過(guò)DLL進(jìn)行

Web對(duì)接:代碼啰嗦,第三方庫(kù)少

崩潰處理:Windows下可使用SEH捕獲段異常,其他平臺(tái)只能通過(guò)崩潰后進(jìn)行coredump分析,容錯(cuò)非常差

網(wǎng)絡(luò)庫(kù)編寫(xiě)難度:基于asio編寫(xiě)較為簡(jiǎn)單,但總體看來(lái)難度不低

第三方網(wǎng)絡(luò)庫(kù)及框架數(shù)量:較多

 

以下是得分

image

 

從發(fā)文時(shí)的項(xiàng)目對(duì)這些語(yǔ)言使用率來(lái)說(shuō),Java,Erlang,C++編寫(xiě)的服務(wù)器較多,Golang,JavaScript,C#是第二梯隊(duì),Skynet由于上手不是很容易,所以僅有兩位數(shù)的團(tuán)隊(duì)在使用,但總體表現(xiàn)還是比較出色的

對(duì)于老團(tuán)隊(duì), C++的服務(wù)器工具鏈和框架已經(jīng)相對(duì)成熟, 完全沒(méi)必要更換新語(yǔ)言, 只是在對(duì)接sdk感覺(jué)困難時(shí),可以嘗試Golang這些對(duì)web有優(yōu)勢(shì)的語(yǔ)言進(jìn)行混合語(yǔ)言開(kāi)發(fā)

對(duì)于新團(tuán)隊(duì),開(kāi)發(fā)效率,上手度和部署效率是優(yōu)先選擇的,C#,Golang,JavaScript這些新興語(yǔ)言會(huì)讓你事半功倍

對(duì)于大規(guī)模無(wú)需選服的服務(wù)器, Skynet的actor模型對(duì)擴(kuò)展會(huì)比較容易

對(duì)于大公司,好項(xiàng)目,上線后需要通過(guò)熱更新進(jìn)行bug修補(bǔ)的,C#,C++,Erlang會(huì)是首選

 

但總的一點(diǎn), 還是根據(jù)團(tuán)隊(duì)熟悉度來(lái)選擇語(yǔ)言,貿(mào)然的使用新語(yǔ)言的風(fēng)險(xiǎn)也是很大的


評(píng)論

# re: 服務(wù)器開(kāi)發(fā)語(yǔ)言比較 2016-01-20 17:55 路人
c#做游戲服務(wù)端, 配合unity3d簡(jiǎn)直完美  回復(fù)  更多評(píng)論
  

# re: 服務(wù)器開(kāi)發(fā)語(yǔ)言比較[未登錄](méi) 2016-05-05 15:42 shine
居然沒(méi)有Java  回復(fù)  更多評(píng)論
  

# re: 服務(wù)器開(kāi)發(fā)語(yǔ)言比較 2016-05-05 16:33 戰(zhàn)魂小筑
@shine
哈哈哈, 被你發(fā)現(xiàn)了, 因?yàn)槲疫@邊不用Java
Java的分至少也和C#相當(dāng)  回復(fù)  更多評(píng)論
  

# re: 服務(wù)器開(kāi)發(fā)語(yǔ)言比較 2016-05-10 02:56 SuperSoar
C# 部署麻煩。
另外 話說(shuō)最近才發(fā)現(xiàn) go語(yǔ)言真是相當(dāng)不錯(cuò)了。
go不是vm語(yǔ)言。
其次 go語(yǔ)言的網(wǎng)絡(luò)開(kāi)發(fā)確實(shí)方便到爆 C#相與之比較還是 遜色很多。

C#這個(gè)語(yǔ)言真是即嚴(yán)謹(jǐn)又啰嗦。
  回復(fù)  更多評(píng)論
  

# re: 服務(wù)器開(kāi)發(fā)語(yǔ)言比較 2016-05-10 09:08 戰(zhàn)魂小筑

@SuperSoar
部署麻煩點(diǎn), 但語(yǔ)言和開(kāi)發(fā)環(huán)境是go的軟肋, C#太方便了  回復(fù)  更多評(píng)論
  

# re: 服務(wù)器開(kāi)發(fā)語(yǔ)言比較 2016-06-15 21:58 witch
我們團(tuán)隊(duì)就犯了貿(mào)然更換語(yǔ)言的錯(cuò)誤,導(dǎo)致現(xiàn)在后悔的不得了。

golang現(xiàn)在用下來(lái),遇到幾個(gè)麻煩的坑。
1. 調(diào)試不能用斷點(diǎn)。我們使用新版的idea來(lái)開(kāi)發(fā)golang程序,但斷點(diǎn)經(jīng)常失敗。而lite好多人用不習(xí)慣。
2. 第三方庫(kù)偏少,但最重要的是很多都沒(méi)有tag或版本,根本不知道獲取下來(lái)的是開(kāi)發(fā)版本還是穩(wěn)定版本,甚至不知道api有哪些改動(dòng)。有時(shí)候需要獲取一個(gè)早期版本時(shí)不得不從git的log中仔細(xì)找。
3. 沒(méi)有熱更新,上線后出了問(wèn)題不好處理。
4. 沒(méi)有泛型。
5. 指針類型和值類型之間更偏向于值類型的設(shè)計(jì)對(duì)非C++出身的程序員還是容易犯錯(cuò)。
6. 切片有坑!
7. 語(yǔ)法存在一種表述多種含義的模糊性。導(dǎo)致第一眼看代碼時(shí)容易看不懂,必須結(jié)合上下文來(lái)仔細(xì)理解。
  回復(fù)  更多評(píng)論
  

# re: 服務(wù)器開(kāi)發(fā)語(yǔ)言比較 2016-06-15 22:28 戰(zhàn)魂小筑
@witch
1. 調(diào)試不能用斷點(diǎn)。我們使用新版的idea來(lái)開(kāi)發(fā)golang程序,但斷點(diǎn)經(jīng)常失敗。而lite好多人用不習(xí)慣。
調(diào)試不用斷點(diǎn)是一種基本素質(zhì), 要求代碼有一定可分析基礎(chǔ), 習(xí)慣就好

2. 第三方庫(kù)偏少,但最重要的是很多都沒(méi)有tag或版本,根本不知道獲取下來(lái)的是開(kāi)發(fā)版本還是穩(wěn)定版本,甚至不知道api有哪些改動(dòng)。有時(shí)候需要獲取一個(gè)早期版本時(shí)不得不從git的log中仔細(xì)找。

寫(xiě)游戲服務(wù)器不存在用第三方庫(kù), 我們最多用到mongodb, mysql等的第三方庫(kù). 當(dāng)時(shí)也出現(xiàn)過(guò)選擇問(wèn)題, 但最終還是選到合適的了

3. 沒(méi)有熱更新,上線后出了問(wèn)題不好處理。
這個(gè)就是和運(yùn)營(yíng)運(yùn)維的配合, 如果服務(wù)器連停下來(lái)更新都不允許, 這個(gè)也太過(guò)了

4. 沒(méi)有泛型。
這是個(gè)問(wèn)題, 后期應(yīng)該會(huì)有所改善

5. 指針類型和值類型之間更偏向于值類型的設(shè)計(jì)對(duì)非C++出身的程序員還是容易犯錯(cuò)。
請(qǐng)更多的使用指針類型

6. 切片有坑!
比起指針來(lái)說(shuō), 切片的坑算少的了

7. 語(yǔ)法存在一種表述多種含義的模糊性。導(dǎo)致第一眼看代碼時(shí)容易看不懂,必須結(jié)合上下文來(lái)仔細(xì)理解。

這是你們編寫(xiě)問(wèn)題吧, 我們基本上拿到任何人代碼都能馬上看得懂

  回復(fù)  更多評(píng)論
  

# re: 服務(wù)器開(kāi)發(fā)語(yǔ)言比較 2016-06-16 00:28 witch
@戰(zhàn)魂小筑
1. 希望delve早日完善了。

2. 這個(gè)是吐槽下protobuf庫(kù)。redigo和gorm也有這個(gè)問(wèn)題。希望官方能早日統(tǒng)一下庫(kù)發(fā)布時(shí)的版本規(guī)則吧,畢竟優(yōu)秀的第三方庫(kù)可以提升項(xiàng)目的實(shí)現(xiàn)難度和維護(hù)性。

3. 熱更新對(duì)于使用長(zhǎng)連接的游戲服務(wù)器來(lái)說(shuō)真的是個(gè)巨大的加分點(diǎn)。
開(kāi)服第一天就停服維護(hù)會(huì)讓在線掉很多,不利于數(shù)據(jù)的采集,也打擊運(yùn)營(yíng)的信心。服務(wù)器鋪開(kāi)來(lái)后,為了一個(gè)bug而大面積停服也是挺頭大的。特別是對(duì)于游戲這類開(kāi)發(fā)節(jié)奏很緊業(yè)務(wù)很復(fù)雜很容易出bug的項(xiàng)目。

4. 希望版本2趕緊出來(lái)。

6. 指針不能參與運(yùn)算感覺(jué)已經(jīng)比C、C++好很多了。求教指針相關(guān)的坑?

7. 這個(gè)是我表述錯(cuò)誤了。應(yīng)該是go的嵌入類型特性以及非常自由的接口機(jī)制導(dǎo)致不太容易找到接口的實(shí)現(xiàn),也不容易注意到是否誤實(shí)現(xiàn)了某個(gè)接口。
  回復(fù)  更多評(píng)論
  

# re: 服務(wù)器開(kāi)發(fā)語(yǔ)言比較 2016-06-29 05:16 SuperSoar
@戰(zhàn)魂小筑
是的 LiteIde 這種雖然勉強(qiáng)能用,但是相比VS 還是相差得太遠(yuǎn)太遠(yuǎn)了...
  回復(fù)  更多評(píng)論
  

# re: 服務(wù)器開(kāi)發(fā)語(yǔ)言比較[未登錄](méi) 2016-06-29 17:18 eric
java和erlang不用嗎  回復(fù)  更多評(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>
            亚洲欧美福利一区二区| 欧美gay视频| 久久精品亚洲精品国产欧美kt∨| 嫩草伊人久久精品少妇av杨幂| 亚洲视频在线观看网站| 欧美国产欧美亚州国产日韩mv天天看完整 | 在线看成人片| 久久精品国产亚洲aⅴ| 亚洲深夜福利视频| 欧美色视频一区| 日韩午夜av在线| 亚洲国产日韩一区| 欧美不卡三区| 日韩亚洲精品在线| 日韩视频免费看| 欧美三级日本三级少妇99| 亚洲午夜久久久久久久久电影院| 亚洲精品欧美精品| 欧美日韩中文字幕精品| 亚洲宅男天堂在线观看无病毒| 99热免费精品| 欧美性片在线观看| 性欧美暴力猛交69hd| 亚洲欧美在线x视频| 国产网站欧美日韩免费精品在线观看 | 久久精品国产亚洲5555| 国内一区二区三区| 欧美大尺度在线| 欧美激情久久久| 亚洲小说欧美另类社区| 亚洲视频欧美视频| 国产日本欧美在线观看 | 久久精品国产亚洲精品| 黄色成人在线| 亚洲国产毛片完整版| 欧美日韩系列| 久久国产婷婷国产香蕉| 久色成人在线| 亚洲一二三四久久| 欧美在线影院在线视频| 最新亚洲电影| 亚洲一二三区视频在线观看| 国产一级久久| 亚洲国产天堂久久国产91| 欧美午夜在线视频| 久久久精品一区二区三区| 免费短视频成人日韩| 亚洲视频一区二区| 欧美中日韩免费视频| 国产日韩av在线播放| 欧美国产欧美亚洲国产日韩mv天天看完整 | 在线成人亚洲| 亚洲欧洲日韩女同| 国产精品色婷婷久久58| 久久在线观看视频| 欧美视频官网| 欧美高清在线一区| 国产精品丝袜白浆摸在线| 免费视频一区| 国产精品一区亚洲| 亚洲日本一区二区| 怡红院精品视频| 亚洲一级高清| av成人免费| 久久久青草婷婷精品综合日韩| 亚洲午夜电影在线观看| 久久综合九色综合久99| 欧美在线观看视频一区二区三区| 欧美激情国产日韩| 欧美18av| 好吊妞这里只有精品| 亚洲午夜黄色| 一区二区三区久久网| 美女精品网站| 久久躁日日躁aaaaxxxx| 国产麻豆视频精品| 亚洲午夜激情| 亚洲一级片在线观看| 欧美精品自拍| 亚洲高清免费| 亚洲国产乱码最新视频| 久久国产免费看| 欧美一区二区在线观看| 国产精品福利在线观看网址| 亚洲三级观看| 99这里只有久久精品视频| 裸体素人女欧美日韩| 毛片一区二区三区| 伊人婷婷久久| 巨乳诱惑日韩免费av| 能在线观看的日韩av| 激情亚洲网站| 久久亚洲精品一区| 欧美成人免费在线视频| 在线欧美不卡| 久久天天躁夜夜躁狠狠躁2022| 久久久久久一区| 精品成人在线| 鲁大师成人一区二区三区| 欧美aa在线视频| 亚洲黄色三级| 欧美日韩免费在线| 一区二区三区成人| 午夜免费久久久久| 国产一区二区三区在线观看视频 | 亚洲欧美视频一区二区三区| 欧美成人精品福利| 国产精品久久久久一区| 亚洲视频免费在线观看| 亚洲一区免费在线观看| 国产精品国产自产拍高清av| 一本大道久久精品懂色aⅴ| 亚洲一区二区三区在线观看视频 | 国产精品网站在线观看| 欧美一区二区三区免费视| 久久婷婷国产麻豆91天堂| 亚洲成人自拍视频| 欧美久久视频| 亚洲欧美激情一区| 免费观看日韩| 亚洲小说春色综合另类电影| 国产欧美日韩精品在线| 另类尿喷潮videofree| 亚洲日韩成人| 久久久99精品免费观看不卡| 亚洲欧洲一区二区天堂久久 | 久久精品成人| 亚洲国产成人av| 欧美体内she精视频在线观看| 亚洲综合色网站| 美女在线一区二区| 国产精品99久久久久久www| 国产偷国产偷亚洲高清97cao| 免费在线一区二区| 亚洲在线一区二区| 亚洲福利专区| 久久成人免费视频| 一本久道久久综合婷婷鲸鱼| 国产一级精品aaaaa看| 欧美猛交免费看| 欧美中文字幕在线| 亚洲婷婷在线| 亚洲国产美女| 久久青草欧美一区二区三区| 一区二区三区四区五区精品| 国产在线视频欧美一区二区三区| 欧美日韩国产三级| 久久一二三国产| 亚洲欧美日韩天堂| 日韩午夜中文字幕| 欧美成人综合| 久久中文精品| 久久精品国产精品亚洲综合| 中文国产一区| 亚洲人精品午夜| 黄色一区二区在线| 国产精品一二三| 欧美日韩综合视频| 欧美成人小视频| 久久久亚洲高清| 欧美一区二区福利在线| 中文欧美在线视频| 99精品99久久久久久宅男| 亚洲激情在线播放| 欧美激情精品久久久久久蜜臀 | 玖玖综合伊人| 久久超碰97人人做人人爱| 在线亚洲精品福利网址导航| 亚洲日本aⅴ片在线观看香蕉| 狠狠网亚洲精品| 加勒比av一区二区| 好吊色欧美一区二区三区四区 | 先锋影音网一区二区| 99成人精品| 亚洲精品乱码久久久久久蜜桃麻豆| 国内激情久久| 精品电影一区| 亚洲大片av| 亚洲国产一区二区三区高清| 在线免费高清一区二区三区| 在线精品亚洲| 亚洲国产日韩欧美在线图片| 在线成人激情黄色| 亚洲国产日韩欧美| 亚洲美女色禁图| 一区二区欧美日韩视频| 亚洲一级免费视频| 欧美一区二区三区播放老司机| 欧美一区二区三区视频| 久久精品首页| 久久久最新网址| 欧美成人综合网站| 亚洲三级电影在线观看| 99在线热播精品免费99热| 亚洲午夜精品一区二区三区他趣| 亚洲综合视频网| 久久久久久一区| 欧美激情综合色综合啪啪| 欧美日韩三级电影在线| 国产日韩欧美a|