使用node.js开发云服务

时间:2014-06-02 21:51:47

标签: node.js azure javascript-events azure-cloud-services

我正致力于通过Microsoft Azure使用node.js创建云服务。我一直在读它的工作原理。我知道node.js只有一个进程,并使用事件驱动的异步系统。在http服务器每秒收到大量请求的情况下(正如云服务所预期的那样),由于node.js使用单个进程,因此它不会开始处理非常慢的请求(因为它不是多线程的)并且必须要求顺序)?如果是这种情况,那么使用node.js开发云服务是没有意义的。有人可以解释我的假设是对还是错?如果它是正确的,那么我应该使用node.js开发一个可能每秒接收数百万个请求的服务吗?

1 个答案:

答案 0 :(得分:0)

默认情况下,Node.js应用程序不是多线程的。实际上,您只能启动与最大CPU核心数一样多的进程。然后,每个过程达到一个核心的最大处理能力,考虑到当今的技术,这是非常多的。

节点js最重要的部分是事件驱动方面。虽然大多数其他程序将等待完成I / O操作node.js将继续处理队列中的下一个请求。因此,即使有大量的传入请求,node.js项目也能很好地运行。

关于几个CPU的多线程的第一部分是node.js在云计算世界中如此受欢迎的原因之一。它使缩放比许多其他语言/环境容易得多。