NodeJS内部HTTP Web服务器的主要用途是什么?

时间:2014-04-01 10:15:02

标签: node.js apache nginx

我目前正在学习NodeJS并对此非常兴奋。 但这是我不确定并且需要帮助的一件事。

我们知道NodeJS有自己的内部http网络服务器,我们只需使用http.createServer()方法创建。

我的问题是:

  1. NodeJS有内部http网络服务器,是否可以取代像Apache或Nginx这样的类似http网络服务器?
  2. 如果我需要创建企业级应用程序,NodeJS内部Web服务能够做到这一点吗?或者我还需要使用Apache / Nginx吗?
  3. 请帮忙。谢谢。 阿德里安

2 个答案:

答案 0 :(得分:0)

  1. node.js不需要像Apache或nginx这样的Web服务器,它是自己的Web服务器。
  2. 用他们的话说,沃尔玛使用了节点“end-to-end javascript”......这当然是企业规模的,尽管他们没有明确表示他们依赖于http.createServer,结束javascript将消除Apache或nginx,我怀疑他们已经开发了一些奇特的解决方案(尽管socket.io是可能的)...一般来说,如果你在网络上使用节点,你使用的是内置的Web服务器至少有一定的容量。
  3. 在前端使用nginx作为反向代理/静态文件服务器可能有一些好处。如果我正在设计我的“完美系统”,我可能会这样做,但我仍然会将请求传递回节点中的内置Web服务器。

答案 1 :(得分:0)

您不需要将Apache或Nginx与node.js一起使用,但在实践中,它可能是一个好主意。

基本上,Apache会坐在您的node.js前面,并使用类似mod_rewrite的内容向您的节点应用程序中继请求。

节点http服务器模块非常适合启动快速应用程序,但如果您需要SSL,复杂mod_rewrites,目录安全性,详细日志等(即商业应用程序中需要的所有内容),您需要(或至少,更容易)在节点前使用Apache或Nginx。