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

戰魂小筑

討論群:309800774 知乎關注:http://zhihu.com/people/sunicdavy 開源項目:https://github.com/davyxu

   :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  257 隨筆 :: 0 文章 :: 506 評論 :: 0 Trackbacks

以下比較的基礎都是基于一種編程語言+一定的第三方或者自己編寫的網絡庫和底層進行的,Skynet稍微特殊,但總體比較合適放到比較中來

C#

開發效率:Windows下可以通過VisualStudio進行開發,其他平臺可以使用MonoDevelop,非常方便

運行效率:JIT的性能優化比較到位,能適應90%性能環境

部署便捷性:可以通過交叉編譯生成其他平臺的可執行文件,通過mono運行可執行文件

調試便捷性:VisualStudio和MonoDevelop調試均很方便, 還可遠程調試

上手度:對C系語言熟悉的幾天就可上手

熱更新:可以通過DLL方式進行

Web對接:可做,代碼比較啰嗦

崩潰處理:可通過try catch捕獲錯誤

網絡庫編寫難度:一般,需注意gc問題

第三方網絡庫及框架數量:一般

 

Golang

開發效率:高

運行效率:并發上非常有優勢,對CPU利用率比較高,原生運行無虛擬機

部署便捷性:一次編譯到處運行,無任何運行庫依賴

調試便捷性:實際操作中,單線程掛接調試器可行, 但變量顯示不正確,開發期基本采用日志方式進行查錯

上手度:語言簡單,特性少, 新手1周能貢獻代碼

熱更新:無法進行熱更新,語言無法編譯為DLL,也不支持DLL加載(linux平臺的.so加載忽略不計)

Web對接:非常方便, 代碼精簡

崩潰處理:崩潰后以命令行方式打印出棧,程序內可以捕獲任何崩潰錯誤并繼續運行

網絡庫編寫難度:簡單,比C socket更簡單

第三方網絡庫及框架數量:偏少

 

Skynet(lua+C)

開發效率:基于動態語言的開發初次寫比較快,后期維護和重構會耗費一定的時間在查錯上

運行效率:基于lua jit的運行效率還是能接受的

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

調試便捷性:不是很方便,基于日志方式進行查錯

上手度:lua語言特性有部分和C系語言有一定差異,基于Actor模型的思想學習,適應需要耗費一定的時間

熱更新:類似于Erlang,可精確到函數級的熱更新

Web對接:有一些http支持,通過社區慢慢進行完善

崩潰處理:lua天生可以捕獲錯誤

網絡庫編寫難度:自帶,無需編寫

第三方網絡庫及框架數量:通過社區慢慢完善

 

C++

開發效率:編譯慢,文件多,通用庫少

運行效率:native速度標桿

部署便捷性:編寫各類的make門檻較高

調試便捷性:可通過VisualStudio進行Windows平臺調試

上手度:2~3年經驗的熟手仍然會寫出崩潰和泄露代碼

熱更新:可通過DLL進行

Web對接:代碼啰嗦,第三方庫少

崩潰處理:Windows下可使用SEH捕獲段異常,其他平臺只能通過崩潰后進行coredump分析,容錯非常差

網絡庫編寫難度:基于asio編寫較為簡單,但總體看來難度不低

第三方網絡庫及框架數量:較多

 

以下是得分

image

 

從發文時的項目對這些語言使用率來說,Java,Erlang,C++編寫的服務器較多,Golang,JavaScript,C#是第二梯隊,Skynet由于上手不是很容易,所以僅有兩位數的團隊在使用,但總體表現還是比較出色的

對于老團隊, C++的服務器工具鏈和框架已經相對成熟, 完全沒必要更換新語言, 只是在對接sdk感覺困難時,可以嘗試Golang這些對web有優勢的語言進行混合語言開發

對于新團隊,開發效率,上手度和部署效率是優先選擇的,C#,Golang,JavaScript這些新興語言會讓你事半功倍

對于大規模無需選服的服務器, Skynet的actor模型對擴展會比較容易

對于大公司,好項目,上線后需要通過熱更新進行bug修補的,C#,C++,Erlang會是首選

 

但總的一點, 還是根據團隊熟悉度來選擇語言,貿然的使用新語言的風險也是很大的

posted on 2016-01-05 16:51 戰魂小筑 閱讀(18976) 評論(10)  編輯 收藏 引用 所屬分類: 網絡 服務器技術 、C++/ 編程語言Golang

評論

# re: 服務器開發語言比較 2016-01-20 17:55 路人
c#做游戲服務端, 配合unity3d簡直完美  回復  更多評論
  

# re: 服務器開發語言比較[未登錄] 2016-05-05 15:42 shine
居然沒有Java  回復  更多評論
  

# re: 服務器開發語言比較 2016-05-05 16:33 戰魂小筑
@shine
哈哈哈, 被你發現了, 因為我這邊不用Java
Java的分至少也和C#相當  回復  更多評論
  

# re: 服務器開發語言比較 2016-05-10 02:56 SuperSoar
C# 部署麻煩。
另外 話說最近才發現 go語言真是相當不錯了。
go不是vm語言。
其次 go語言的網絡開發確實方便到爆 C#相與之比較還是 遜色很多。

C#這個語言真是即嚴謹又啰嗦。
  回復  更多評論
  

# re: 服務器開發語言比較 2016-05-10 09:08 戰魂小筑

@SuperSoar
部署麻煩點, 但語言和開發環境是go的軟肋, C#太方便了  回復  更多評論
  

# re: 服務器開發語言比較 2016-06-15 21:58 witch
我們團隊就犯了貿然更換語言的錯誤,導致現在后悔的不得了。

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

# re: 服務器開發語言比較 2016-06-15 22:28 戰魂小筑
@witch
1. 調試不能用斷點。我們使用新版的idea來開發golang程序,但斷點經常失敗。而lite好多人用不習慣。
調試不用斷點是一種基本素質, 要求代碼有一定可分析基礎, 習慣就好

2. 第三方庫偏少,但最重要的是很多都沒有tag或版本,根本不知道獲取下來的是開發版本還是穩定版本,甚至不知道api有哪些改動。有時候需要獲取一個早期版本時不得不從git的log中仔細找。

寫游戲服務器不存在用第三方庫, 我們最多用到mongodb, mysql等的第三方庫. 當時也出現過選擇問題, 但最終還是選到合適的了

3. 沒有熱更新,上線后出了問題不好處理。
這個就是和運營運維的配合, 如果服務器連停下來更新都不允許, 這個也太過了

4. 沒有泛型。
這是個問題, 后期應該會有所改善

5. 指針類型和值類型之間更偏向于值類型的設計對非C++出身的程序員還是容易犯錯。
請更多的使用指針類型

6. 切片有坑!
比起指針來說, 切片的坑算少的了

7. 語法存在一種表述多種含義的模糊性。導致第一眼看代碼時容易看不懂,必須結合上下文來仔細理解。

這是你們編寫問題吧, 我們基本上拿到任何人代碼都能馬上看得懂

  回復  更多評論
  

# re: 服務器開發語言比較 2016-06-16 00:28 witch
@戰魂小筑
1. 希望delve早日完善了。

2. 這個是吐槽下protobuf庫。redigo和gorm也有這個問題。希望官方能早日統一下庫發布時的版本規則吧,畢竟優秀的第三方庫可以提升項目的實現難度和維護性。

3. 熱更新對于使用長連接的游戲服務器來說真的是個巨大的加分點。
開服第一天就停服維護會讓在線掉很多,不利于數據的采集,也打擊運營的信心。服務器鋪開來后,為了一個bug而大面積停服也是挺頭大的。特別是對于游戲這類開發節奏很緊業務很復雜很容易出bug的項目。

4. 希望版本2趕緊出來。

6. 指針不能參與運算感覺已經比C、C++好很多了。求教指針相關的坑?

7. 這個是我表述錯誤了。應該是go的嵌入類型特性以及非常自由的接口機制導致不太容易找到接口的實現,也不容易注意到是否誤實現了某個接口。
  回復  更多評論
  

# re: 服務器開發語言比較 2016-06-29 05:16 SuperSoar
@戰魂小筑
是的 LiteIde 這種雖然勉強能用,但是相比VS 還是相差得太遠太遠了...
  回復  更多評論
  

# re: 服務器開發語言比較[未登錄] 2016-06-29 17:18 eric
java和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>
            久久噜噜噜精品国产亚洲综合| 欧美一区1区三区3区公司| 国产精品久久久久久久久久免费看| 国产日韩欧美在线观看| 亚洲午夜免费福利视频| 亚洲一区二区三区精品视频| 国产精品自拍视频| 老司机午夜免费精品视频 | 国产情侣久久| 久久综合九色99| 欧美freesex交免费视频| 一区二区三区欧美在线| 亚洲淫片在线视频| 亚洲第一页在线| 亚洲精品偷拍| 亚洲精一区二区三区| 蜜桃精品一区二区三区| 亚洲精品黄色| 亚洲欧美国产精品桃花| 尤物精品在线| 99精品欧美一区二区蜜桃免费| 国产精品久久久久久久7电影| 久久福利视频导航| 欧美韩日一区二区三区| 久久成人免费日本黄色| 免费久久精品视频| 欧美一区二区三区喷汁尤物| 免费美女久久99| 欧美影院成人| 欧美激情小视频| 久久久久久久一区二区| 欧美日韩精品综合| 麻豆freexxxx性91精品| 国产精品午夜av在线| 亚洲国产精品久久久| 国产精品久久久久高潮| 欧美激情一区二区三区成人 | 亚洲在线黄色| 日韩午夜电影av| 久久久久免费| 久久福利一区| 国产精品一二一区| 亚洲精品一级| 亚洲激情在线视频| 久久久国产精品亚洲一区 | 国产亚洲欧美一级| 99视频精品免费观看| 亚洲人成啪啪网站| 老司机午夜精品| 久久网站热最新地址| 国产精品日韩欧美一区| 99视频精品| 亚洲私人影院| 欧美日韩视频一区二区| 亚洲国产精品999| 91久久精品国产91久久性色| 久热精品视频在线观看| 久热精品视频在线| 黄色成人在线网址| 久久精品国产亚洲一区二区三区| 性欧美长视频| 一本色道**综合亚洲精品蜜桃冫 | 99精品视频一区二区三区| 久久精品综合一区| 久久婷婷国产综合尤物精品| 国产一区二区三区自拍| 欧美一区二区在线播放| 久久久久久成人| 国内精品久久国产| 久久久久久网址| 亚洲第一精品电影| 亚洲乱码日产精品bd| 欧美国产亚洲另类动漫| 日韩午夜精品| 性做久久久久久| 韩国精品在线观看| 猫咪成人在线观看| 亚洲精品国产精品乱码不99 | 国产欧美大片| 久久婷婷成人综合色| 亚洲电影免费观看高清完整版在线观看 | 亚洲日韩第九十九页| 欧美精品黄色| 亚洲天堂久久| 久久久亚洲欧洲日产国码αv| 伊人久久久大香线蕉综合直播| 免费成人在线视频网站| 日韩午夜高潮| 久热国产精品| 中文av一区二区| 国产日韩欧美一区| 欧美电影免费观看大全| 一区二区91| 久久综合久色欧美综合狠狠| 亚洲精品在线视频| 国产精品亚洲美女av网站| 久久蜜桃精品| 一区二区不卡在线视频 午夜欧美不卡'| 亚洲欧美日韩视频一区| 一区在线影院| 国产精品第十页| 久久亚洲不卡| 亚洲一区二区在线视频 | 久久精品视频在线| 日韩亚洲欧美精品| 国模吧视频一区| 欧美三日本三级三级在线播放| 久久精品系列| 亚洲午夜一区| 亚洲国产一区在线| 久久精选视频| 亚洲欧美日韩一区在线| 亚洲人成欧美中文字幕| 国内精品视频在线观看| 国产精品mv在线观看| 美女性感视频久久久| 欧美一区在线看| 亚洲私人影院在线观看| 亚洲国产裸拍裸体视频在线观看乱了中文 | 亚洲第一久久影院| 国产伦精品一区| 欧美日韩国内自拍| 美女久久一区| 久久国产精品一区二区三区四区| 日韩亚洲精品视频| 亚洲国产精品99久久久久久久久| 久久精品国产亚洲高清剧情介绍| 一区二区三区欧美在线观看| 亚洲级视频在线观看免费1级| 国产日韩欧美a| 国产精品乱码一区二区三区| 欧美视频一区二区三区四区| 先锋影音一区二区三区| 久久精品视频在线播放| 一区二区欧美日韩| 亚洲精品视频在线播放| 亚洲人成网站999久久久综合| 母乳一区在线观看| 美日韩精品视频| 蜜臀久久久99精品久久久久久| 久久久久综合一区二区三区| 久久久久亚洲综合| 久久青草久久| 免费人成精品欧美精品| 欧美国产亚洲精品久久久8v| 欧美高清在线播放| 亚洲高清在线视频| 亚洲全黄一级网站| 亚洲精品国久久99热| 日韩网站免费观看| 亚洲午夜精品久久| 亚洲欧美日韩精品一区二区| 欧美一级精品大片| 久久天天躁狠狠躁夜夜爽蜜月| 久热这里只精品99re8久| 免费观看成人鲁鲁鲁鲁鲁视频| 女同性一区二区三区人了人一 | 99热这里只有成人精品国产| 99国产精品一区| 午夜精品久久久久影视 | 欧美一区二区在线免费播放| 久久成人国产| 欧美成人精品激情在线观看| 欧美精品在欧美一区二区少妇| 欧美调教vk| 国内精品久久久久影院色| 亚洲国产成人久久综合一区| 日韩视频专区| 久久本道综合色狠狠五月| 欧美大片在线看| 一区二区精品在线| 久久久精彩视频| 欧美日韩成人一区| 国产视频在线观看一区| 亚洲精品网站在线播放gif| 亚洲欧美电影在线观看| 麻豆av福利av久久av| 99视频在线精品国自产拍免费观看| 午夜视频在线观看一区二区三区| 久久天天综合| 国产精品一区一区三区| 亚洲日本激情| 久久精品99国产精品酒店日本| 欧美成年人视频网站欧美| 国产精品99久久99久久久二8 | 国产日韩欧美在线看| 在线观看的日韩av| 亚洲一二区在线| 欧美成人69av| 午夜精品影院| 欧美日韩视频在线第一区| 亚洲电影激情视频网站| 午夜视频久久久| 亚洲精品欧美| 欧美成人在线网站| 激情婷婷欧美| 久久精品国产亚洲aⅴ| 一本色道久久综合亚洲精品小说 | 亚洲一区日本| 欧美视频在线免费看|