三大角度 PK ,Go 语言和 Node.js 谁胜谁负?

栏目: IT资讯 · 发布时间: 5年前

内容简介:Node.js 与 Go 语言一直是互联网大战中的主战场,虽说按照普通的各项指标对比,那么这场战争可能在很长时间内都难分胜负,但我们还是决定尝试对这二者做一些研究,并力求做出更准确的判断。 我们在 Quora 上发现,...

Node.js 与 Go 语言一直是互联网大战中的主战场,虽说按照普通的各项指标对比,那么这场战争可能在很长时间内都难分胜负,但我们还是决定尝试对这二者做一些研究,并力求做出更准确的判断。

我们在 Quora 上发现,很多开发人员都将 Go 语言视为 Node.js 的优秀替代者,所以本文将集中探讨到底是为什么会出现这种情况以及为什么很多企业和开发人员会首选 Go 语言而不是流行的 Node.js 。

三大角度 PK ,Go 语言和 Node.js 谁胜谁负?

性能对比:

首先,只要使用 Go 语言和 Node.js 这两种语言的开发人员都会有感觉,使用 Node.js 时,CPU 性能或内存限制任务会变慢。Node.js 是基于 JavaScript 的一种解释型语言。解释型语言比大多数编译语言都慢,使用 Node 的动态类型特性,其也不会达到 Go 语言可以实现的原始性能,而 Go 语言的表现类似于 C 或 C ++ 。

只有在网络通信或数据库交互的情况下,Node.js 的性能才能与 Go 语言相当。

并行和可扩展:

这是 Go 语言和 Node.js 的另一个战场,当然在这场战斗中,Go 语言击败了大部分的现代计算语言,Node.js 也不例外。因为 “goroutines” ,Go 语言在可扩展性方面占据优势,goroutines 可帮助多个线程同时执行,而且,并行任务的执行是高效可靠的。而 Node.js 是单线程,指令按顺序执行,这无疑就限制了它在大规模扩展期间的能力,在执行大量并行处理时难掩窘态。

语言成熟度:

如果不考虑成熟度,那么无论是哪两种语言之间进行比较都是不完整的。Go 语言在健壮性和成熟度两个方面都表现较好,而 Node.js 因其更改 API 成为了编写和使用 Node 模块的一大障碍。

公平的来看待这两种语言,Node.js 虽然不会马上退出市场,但是当遇到要开发商业解决方案时,Go 语言会是更好的选择,Go 语言如闪电般的性能,goroutine 支持极好的可扩展性和并发性……都将有助于构建更强大的应用程序。

来源:程序师


【声明】文章转载自:开源中国社区 [http://www.oschina.net]


以上所述就是小编给大家介绍的《三大角度 PK ,Go 语言和 Node.js 谁胜谁负?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

图解网络硬件

图解网络硬件

[日] 三轮贤一 / 盛荣 / 人民邮电出版社 / 2014-7 / 69.00元

本书详细介绍了计算机网络硬件的相关知识,在对硬件设备、相关技术及规范进行详尽考据和整理的同时,侧重工程实践,重点讲述了在实际网络建设工程中真实使用的网络硬件设备及其相关背景知识,能够帮助读者深入理解计算机网络在工程实践中某些容易混淆的概念,如L3交换机和路由器等。 本书在讲解的同时,还辅以丰富的图例,使计算机网络设备的真实情况一目了然,同时深入浅出地介绍了原本复杂抽象的计算机网络术语,因此对......一起来看看 《图解网络硬件》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具