那种开发语言对服务器开发比较好

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编写较为简单,但总体看来难度不低

第三方网络库及框架数量:较多

以下是得分

那种开发语言对服务器开发比较好

从发文时的项目对这些语言使用率来说,Java,Erlang,C++编写的服务器较多,Golang,JavaScript,C#是第二梯队,Skynet由于上手不是很容易,所以仅有两位数的团队在使用,但总体表现还是比较出色的

对于老团队, C++的服务器工具链和框架已经相对成熟, 完全没必要更换新语言, 只是在对接sdk感觉困难时,可以尝试Golang这些对web有优势的语言进行混合语言开发

对于新团队,开发效率,上手度和部署效率是优先选择的,C#,Golang,JavaScript这些新兴语言会让你事半功倍

对于大规模无需选服的服务器, Skynet的actor模型对扩展会比较容易

对于大公司,好项目,上线后需要通过热更新进行bug修补的,C#,C++,Erlang会是首选

但总的一点, 还是根据团队熟悉度来选择语言,贸然的使用新语言的风险也是很大的

原创文章,发布者:酷番叔,转转请注明出处:https://www.kufanyun.com/news/4541.html

赞 (0)
酷番叔酷番叔
上一篇 2025年5月15日 17:20
下一篇 2025年5月15日 17:27

相关推荐

  • 什么是域名,你们对域名的理解和看法

      域名(Domain Name),是由一串用点分隔的名字组成的Internet(互联网)上某一台计算机或计算机组的名称,用于在数据传 输时标识计算机的电子方位,来自互联网平台。域名由两个或两个以上的词构成,中间由点号分隔开,域名由各国文字的特定字符集、英文字母、数字及“ – ” 任意组合而成,但开头及结尾均不能含有“ – …

    2025年5月16日
    52200
  • 什么是网站公安备案?

    很多小伙伴不知道什么是公安备案呢? 今天就给大家讲讲什么是公安备案 首先我们来看看含义: 网站备案是根据国家法律法规需要网站的所有者向国家有关部门申请的备案,公安局备案是其中一种。公安局备案一般按照各地公安机关指定的地点和方式进行。 一般除了网站ICP备案外,还要求进行公安备案的,也就是获取公安备案号 那么什么是公安备案号呢? 公安机关备案号是由公安部门所管…

    2025年5月16日
    52700
  • 最新Windows远程桌面服务高危漏洞预警通告

    2019年5月14日,微软公布了5月的补丁更新列表,其中存在一个被标记为严重的RDP(远程桌面服务)远程代码执行漏洞,攻击者可以利用此漏洞,无需用户验证而发送构造特殊的恶意数据在目标系统上执行恶意代码,从而获取机器的完全控制。   此漏洞主要影响的设备为Windows 7、Window Server 2008以及微软已不再支持的Windows 20…

    2019年5月15日
    50200
  • 在大数据的世界,人类是否是被弱势群体

    外卖、快递、打车、健身,每一次活动都会留下记录,这些都会一点一滴地泄露你的隐私。这些都是你在这个商业社会中留下的足迹,会向掌握这些信息的企业或机构,经年累月地诉说你是什么样的人,让他们比亲人朋友都更熟悉你的一切。诺贝尔经济学奖得主、前世界银行首席经济学家约瑟夫·斯蒂格利茨就指出,由于企业掌握大量用户数据,如果不加节制,他们会通过新一轮洗牌,聚集人类历史上从未…

    2025年5月15日
    55000
  • 雅虎宣布将「雅虎群组」(Yahoo Groups)逐步关闭网站

      雅虎(英文名称:Yahoo!,NASDAQ:YHOO)是美国著名的互联网门户网站,也是20世纪末互联网奇迹的创造者之一。其服务包括搜索引擎、电邮、新闻等,业务遍及24个国家和地区,为全球超过5亿的独立用户提供多元化的网络服务。同时也是一家全球性的因特网通讯、商贸及媒体公司。雅虎是全球第一家提供因特网导航服务的网站,总部设在美国加州圣克拉克市,在…

    2019年10月20日
    58000

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-990-9934

在线咨询: QQ交谈

邮件:HI@NOTICE.KUFANYUN.COM

关注微信