我开始使用 node.js 构建一个轻量级、高需求的 REST 平台来构建一些内部应用程序。一个问题与我的开发环境以及 Apache 和 node.js 共存有关。让它们共存没有问题,因为有很多关于如何通过让 Apache 将请求重定向到节点来“共享”端口 80 的帖子:
http://arguments.callee.info/2010/04/20/running-apache-and-node-js-together/ http://www.readwriteweb.com/hack/2010/12/how-to-run- apache-and-nodejs.php
和节点代理到 Apache:
https://github.com/nodejitsu/node-http-proxy
然而,一个似乎想要解决的问题与代理时的性能“命中”有关,特别是在使用 Apache 代理节点时。虽然我的生产环境将是一个纯 node.js 解决方案,侦听端口 80,但理论上不会让 Apache 介入并处理初始 I/O,这几乎会破坏使用 node.js 的大部分性能优势,从我/O 视角?如果此框收到数千个请求、长轮询等,Apache 重定向是否不会产生许多线程,然后传递给单线程 node.js?
正如我所说,对 node 来说是新手,所以只是试图让我的头脑围绕这个问题向前发展。