OurJS


OurJS-我们的JS, 我们的技术-IT文摘; 专注JS相关领域;
我们热爱编程, 我们热爱技术;我们是高大上, 有品味的码农;

欢迎您订阅我们的技术周刊


我们会向您分享我们精心收集整理的,最新的行业资讯,技术动态,外文翻译,热点文章;
我们使用第三方邮件列表向您推送,我们不保存您的任何个人资料,注重您的隐私,您可以随时退订,

欢迎分享您的观点,经验,技巧,心得

让我们一起找寻程序员的快乐,探索技术, 发现IT人生的乐趣;


本网站使用缓存技术每次加载仅需很小流量, 可在手机中流畅浏览;
如果您发现任何BUG,请即时告知我们: ourjs(at)ourjs.com

是什么让Node.js比Java更快?为什么NodeJS这么快?


分享到
分类 技术前沿   关键字 Node.JS   发布 1518409521  1400109992367
注意 转载须保留原文链接,译文链接,作者译者等信息。  

每隔几个星期,就有人发表Java和Node比较的性能评测,像PayPal 或者 Joey Whelan 发表的帖子.作为Node很多公共管理模块核心的维护者和贡献者之一,Strong Loop 很高兴看到Node的获胜。每个人都知道,评测是一个特殊的衡量方式,其实并不适用于所有的情况。有时候Java要快一些,有时候Node要快一些。当然,用什么和怎么衡量才是最重要的。

 

高并发性问题

但是,有一件事我们都认同:为了能适应高并发的情况(成千上万的连接),你的服务器需要采用异步非阻塞模式。你可能已经在IO操作中实现了这种方式。但问题是,如果你的服务器代码的任何部分可能产生阻塞,你都需要开启一个线程。在这种级别的并发下,你不能去为每个连接创建线程。所以整个代码路径都需要异步非阻塞式的, 不仅仅在输入输出层。这就是Node擅长的地方。






尽管Java或Node或其他技术可能赢得一个评测,但到现在为止还没有任何服务器端的语言,实现了像Node.js那样完整的非阻塞生态系统。Node已经实现了超过5W的异步方式的模块了。散落在无数网页的代码示例里,所有的课程和教程都在使用这种异步方式。调试、显示、记录、集群管理、测试框架甚至更多其他更多代码都是你所期待的非阻塞异步模式。


直到Java或另一种语言生态系统能到达支持这种异步模式的程度(在Node中能达到这种水平,是因为JavaScript在浏览器中天生的异步基因), 尽管它原始的非阻塞操作(non-blocking IO)性能可能比node或其他任何评测结果表现的更好;需要大并发的项目会选择Node(并且忍受他的缺点),因为它是完成我们项目的最好方式。

 

大公司, 供应商和社区

我们要帮助让Node和其系统工具和库保持成熟。其他人也在做着同样的事情,从LinkedIn,雅虎与Groupon这样的大用户到像微软,MuleSoft Appcelerator这样的供应商和个人开发者每年贡献成千上万个有用的模块。Node将变得会越来越好,我们会帮助修复缺点或完全消除它们,异步的时代将会带我们进入数以百万计的连接设备的乐土。

 

使用StrongOps 监控node应用程序

准备好开始监视事件循环(Event Loop),管理节点集群(node cluster)并找出内存泄漏了吗?我们可以很容易通过一个简单的npm命令安装,或从你本地,或你最喜欢的云开始使用StrongOps:






原文地址: 点此
社区评论 ( Beta版 )
  • #0 ourjs 1400251301269

    @静夜思

    多谢建议,已经校对,欢迎指出翻译不当的地方。

  • #1 隔心岛 1400204993000
    对高并发处理感兴趣的童鞋可以看这里 https://github.com/kedebug/yohub 基于事件驱动的异步网络编程框架(核心思想在于如何化同步非阻塞为异步非阻塞),在github上面开源。 主要灵感借鉴于林仕鼎先生在百度的某in-house实现。目前拥有不错的并发处理能力,欢迎各位同学关注。
  • #2 小世界 1400205150000
    test
  • #3 小世界 1400205380000
    对高并发处理感兴趣的童鞋可以看这里。 https://github.com/kedebug/yohub 主要灵感启发自 Kylin (百度首席架构师林士鼎先生的baidu in-house作品,用于百度内部异步网络编程)。 核心解决思路在于如何化同步为异步,目前yohub解决了这一点,并且还在持续优化中,欢迎各位童鞋关注或者给出意见。
  • #4 冷眸 1400206399000
    - 0 - 我是多么希望技术文章能用词更准确一点,像这种哗众取宠,或者故意吸引眼球的标题,看到这种标题我只想说: 亲,你也是以后要当编辑的人么? 我建议你将标题改为 Node.js (rest)在响应效率上 比java (rest +soap ) 快。。
  • #5 牵着你的手 1400208079000
    @冷眸

    人家只是翻译一下……
  • #6 静夜思 1400238727000
    绝对是Google翻译的,认真点好不好。
  • #7 邬过冰 1425113559072

    两种语言的性能对比,很快地不知不觉转移到IO模型的对比,有意思吗?

  • #8 邬过冰 1425113604362

    也不能算是两种语言的的对比,应该是两个虚拟机的性能对比!

  • #9 尤观月 1495036499254

    我只想说再好的语言也架不住乱写代码的

OnceDoc 您自己的企业内容管理系统——文档、流程、知识库、报表、网盘All In One

访问404页面,寻找丢失儿童
 热门文章 - 分享最多
  1. 编程是一个没有前途的工作
  2. 你已经毁了JavaScript
  3. 为什么我不建议你将JavaScript作为主力语言
  4. 你用什么工具开发JavaScript?
  5. 现在,你为什么应该学Node.js
  6. 将JavaScript 作为第一编程语言
  7. 什么是最优秀的JavaScript框架?Angular or Backbone?
  8. 使用Backbone构建精美应用的7条建议
  9. 抛弃jQuery,深入原生的JavaScript
  10. 干嘛不在企业中使用Node.js呢?
  11. AirJD-简单好用的免费建站工具

 相关阅读 - 技术前沿
  1. Web App框架发展趋势及现状分析
  2. 图解C++、CoffeeScript、Ruby复杂度
  3. 为什么JavaScript有能力成为未来企业级编程语言?
  4. 在ES5中实现MapReduce
  5. Tessel:用JavaScript做嵌入式开发
  6. 移动网站性能优化:网页加载技术概览
  7. PaaS乱局:Container的新机遇
  8. 一句命令快速合并 JS、CSS
  9. Node.js 编程的未来
  10. 最新研究:在手机上,Data-url和CSS Sprites哪一个更快?

 关键字 - Node.JS
  1. Express入门教程:一个简单的博客
  2. Node.JS中如何判断递归嵌套的所有回调函数已经执行完毕,以读取目录下所有文件为例:计数比Promise方式快将近一倍
  3. Node.JS 8.x和9.x新特性:N-API,NPM5,ERROR CODE
  4. Node.JS读取中文TXT编码文件显示乱码问题解决方案
  5. Node.js框架之express
  6. 在nodejs中使用Redis缓存和查询数据及Session持久化(Express)
  7. Node.JS编码规范指南教程:教你优雅地写JavaScript代码
  8. NodeJS动态传参特性:不定个数参数的省略,默认值与解构
  9. Debug调试Node.JS:我们是如何定位内存泄漏和无限循环的
  10. 6款基于Node.JS的开源内容管理和静态网站生成系统

 欢迎订阅 - 技术周刊

我们热爱编程, 我们热爱技术; 我们是高端, 大气, 上档次, 有品味, 时刻需要和国际接轨的码农; 欢迎您订阅我们的技术周刊; 您只需要在右上角输入您的邮箱即可; 我们注重您的隐私,您可以随时退订.
加入我们吧! 让我们一起找寻码农的快乐,探索技术, 发现IT人生的乐趣;


 关注我们

我们的微信公众号: ourjs-com
打开微信扫一扫即可关注我们:
IT文摘-程序员(码农)技术周刊

ourjs官方微信号