del*_*ber 5 benchmarking node.js
我问的原因是这篇文章
http://amix.dk/blog/post/19577
表示Node.js 0.2.2似乎具有500/s的阈值,并且表现优于Netty的10倍.在评论中,Ryan Dahl表示可能是因为一个随后被修复的错误.但是,我无法在帖子的其余部分或其他地方找到任何确认问题得到解决以及是否更新的基准测试.我们现在比上面引用的版本更多版本,我想知道是否有任何基准,正式或其他与Comet请求/秒有关.
如果没有基准,那么一般来说,了解Amir标记的问题是否仍未解决将是一件好事.500彗星/秒是一个门槛,可以通过适度大小的聊天/游戏聚焦网站达到.
node.js已经走过了很长一段路0.2.2。链接帖子中讨论的架构似乎也存在实现问题,因为评论表明他们没有考虑使用带有负载均衡器的多个节点进程。
这显然是高性能应用程序的必要条件——事实上,node.js 官方关于部分的最后一段写道:
但是多处理器并发呢?将程序扩展到多核计算机不需要线程吗?您可以通过 child_process.fork() 启动新进程,这些其他进程将并行调度。为了在多个进程之间平衡传入连接的负载,请使用 cluster 模块。
现在,考虑到单个节点0.2.2进程使用了 Netty %10 的资源(如 OP 链接帖子中提到的),那么它们可以在同一硬件上运行 10 个节点进程,这就引出了一个问题:如果 Netty 速度快 10 倍比节点,但使用10倍的资源,那么它们的性能实际上不是一样的吗?同时,节点的性能在各个版本中得到了极大的提高>=0.6.0,特别是在运行 Windows 的计算机上,现在已经原生支持 Windows 了。0.6.0请参阅发行说明中的 Windows 基准测试:
http 基准测试是通过 10GE 网络上的 600 个客户端完成的,由三台负载生成机器提供服务。
v0.4.12 (windows) v0.6.0 (windows)
http_simple.js /bytes/1024 3858 r/s 5823 r/s
io.js read 12.41 mB/s 26.51 mB/s
io.js write 12.61 mB/s 33.58 mB/s
startup.js 152.81 ms 52.04 ms
Run Code Online (Sandbox Code Playgroud)
与此同时,尽管似乎没有人愿意谈论他们到底在做什么,但似乎一些流量最高的科技公司正在转向node.js极高容量的系统。Google、Yahoo、Mozilla和LinkedInstartupi.TV都在昨天在venturebeat.com上发表的Node atscale一文中进行了介绍。
虽然我无法找到彗星/秒的准确基准,但很明显,如果系统架构正确,它会比 500 高得多。
| 归档时间: |
|
| 查看次数: |
273 次 |
| 最近记录: |