看到很多文章说Node与Java相比有性能高,开发效率高,等等许多优势,那么Java与Node相比有什么优势呢?
node.js开发快,运行的效率也算比较高,但是如果项目大了就容易乱,而且javascript不是静态类型的语言,要到运行时才知道类型错误,
所以写的多了之后免不了会出现光知道有错但是找不到哪儿错的情况。
java开发慢,但是如果项目大、复杂的话,用java就不容易乱,管理起来比node.js省。
所以大项目 使用java进行管理更方便
基本上没优势,唯一的优势可能是会写 Javascript 的人特别多,前后端同构较为容易。
新的 Javascript 标准中对异步的支持也比较好了, Promise、ASync 等。
node.js 的优势在于异步。服务器可以同时处理多个请求,在有结果后再返回响应。
node.js 的生态圈也是一大优势,凡是能用 JavaScript 重写的一定会被用 JavaScript 重写。
纯粹从语言的运行效率,即对一些成熟算法的具体实现来说,node.js在运行时间上可以说毫无优势。
跑在jvm上的java为什么能统治工程界这么多年,干啥都用它?因为它设计完善,实现良好,风险可控,且性能很高。目前唯一的弊端就是内存占用量比脚本语言大很多。目前jvm的网络性能已经超过C++直逼原生C。
说node.js效率高,主要指的是I/O效率高,因为它在底层对所有I/O强制进行异步。
目前互联网的几乎一切性能问题基本上都是I/O问题。
一般单机小网站在流量大到一定程度时,首先扛不住的是数据库,数据库性能差就是因为I/O。
开发效率好像也没什么语言比java低 ,这个不用考虑,当工程量大到一定程度,各种语言之间的开发难度都会趋于一致。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。