我有没有理由在Node.JS服务器前面有代理?

时间:2015-01-19 10:09:27

标签: node.js proxy

为什么我要使用像Nginx这样的东西将请求代理到我的Node.JS服务器?

为什么不允许直接访问节点服务器?

2 个答案:

答案 0 :(得分:1)

互联网不友好,难以生存。

在您的客户端和 Node.js 之间使用Nginx显然可以让您使用Nginx提供的优势。那么这些是什么?

  1. 可以在不触及节点应用程序中的任何代码的情况下设置HTTPS。如果Node应用程序可以被利用,那么它会很棘手,并且可能危及您的HTTPS私钥。
  2. 可以避免Gzipping通信,避免Node应用程序中的任何更改。
  3. 批准。例如,Nginx可以自动阻止不受欢迎的蜘蛛。
  4. 如果您有多个应用程序,Nginx将作为独立路由器使用。
  5. 还有更多......

  6. 总结一下,Nginx将执行服务器内容,因此开发应用程序时,您无需担心Web服务器的管理和常见配置方面。

答案 1 :(得分:0)

我建议你阅读"部署Node.js"的第3章。由Sandro Pasquali(Packt Publishing)专门从第69页开始。

我将引用一些相关的段落:

使用Nginx

  

根据   http://www.linuxjournal.com/magazine/nginx-high-performance-web-server-and-reverse-proxy:   " Nginx能够以更少的资源每秒提供更多请求   因为它的架构。它由一个主进程组成   代表工作到一个或多个工作进程。每个工人处理   使用事件驱动或异步方式的多个请求   Linux内核的特殊功能(epoll / select / poll)。这个   允许Nginx快速处理大量并发请求   只需很少的开销。"

使用节点进行负载均衡

  

文件服务速度当然不是您可能使用的唯一原因   像Nginx这样的代理。网络拓扑通常是正确的   特征使反向代理成为更好的选择   当集中式服务(如压缩)集中化时   感。