抱歉,如果我有点模棱两可,但是我试图了解使用Node.js而不是其他服务器端语言的真正优势。
我是JavaScript爱好者,所以我可能会玩Node.js,但我想知道是否应该在项目中使用它。
在V8上发生了异步非阻塞I / O构建。
因此,我们拥有了Google JavaScript解释器V8的所有性能提升。由于JavaScript性能竞赛尚未结束,您可以期望Google不断更新V8上的性能(免费)。
我们有无阻塞的I / O,这只是进行I / O的正确方法。这基于事件循环,并为您的I / O使用异步回调。
它为您提供了有用的工具,例如创建HTTP服务器,创建TCP服务器,处理文件I / O。
这是一个底层高性能平台,可以执行任何类型的I / O,而无需从头开始用C编写整个事情。由于无阻塞的I / O,它的扩展性非常好。
因此,如果您想使用非阻塞I / O编写高度可扩展且高效的应用程序,同时又可以使用高级脚本语言,则希望使用Node.js。如果需要,您可以通过使用C编写扩展来手动优化部分代码。
有大量的Node.js操作系统库可以为您提供抽象,例如Express.js和now。
如果希望(慢速)高级抽象为您做所有事情,则不想使用Node.js。你不想,如果你想使用Node.js的RAD。如果您无法负担起一个年轻的平台,则不想使用Node.js,这可能是由于必须自己编写大量代码来完成内置在其他框架中的事情,或者是因为您无法使用Node.js,因为该API尚不稳定,或者它是Sub 1.0以下版本。