为什么我应该在我的 Node.JS 服务器前面有一个代理?
Is there a reason why I should have a proxy in front of my Node.JS server?
为什么我应该使用 Nginx 之类的东西将请求代理到我的 Node.JS 服务器?
为什么不允许直接访问节点服务器?
互联网是一个不友好且难以生存的地方。
在您的客户端和 Node.js 之间安装 Nginx 显然可以让您利用 Nginx 提供的优势。那么这些是什么?
- 无需触及 Node 应用程序 中的任何代码即可设置 HTTPS。否则它很棘手,如果可以利用 Node 应用程序,它可能会破坏您的 HTTPS 私钥。
- Gzip 通信可以避免 Node 应用程序中的任何更改。
- 授权。例如,Nginx 可以自动阻止不受欢迎的蜘蛛。
- 如果您有多个应用程序,Nginx 将作为一个独立的路由器。
- 还有更多...
总而言之,Nginx 会做 服务器的事情,因此开发您的应用程序时,您无需担心 Web 服务器的管理和通用配置方面。
我建议您阅读 Sandro Pasquali(Packt Publishing)的 "Deploying Node.js" 第 3 章,从第 69 页开始。
我将引用几个相关的段落:
使用 Nginx
According to
http://www.linuxjournal.com/magazine/nginx-high-performance-web-server-and-reverse-proxy:
"Nginx is able to serve more requests per second with less resources
because of its architecture. It consists of a master process, which
delegates work to one or more worker processes. Each worker handles
multiple requests in an event-driven or asynchronous manner using
special functionality from the Linux kernel (epoll/select/poll). This
allows Nginx to handle a large number of concurrent requests quickly
with very little overhead."
使用节点进行负载平衡
File serving speeds are, of course, not the only reason you might use
a proxy such as Nginx. It is often true that network topology
characteristics make a reverse proxy the better choice, especially
when the centralization of common services, such as compression, makes
sense.
为什么我应该使用 Nginx 之类的东西将请求代理到我的 Node.JS 服务器?
为什么不允许直接访问节点服务器?
互联网是一个不友好且难以生存的地方。
在您的客户端和 Node.js 之间安装 Nginx 显然可以让您利用 Nginx 提供的优势。那么这些是什么?
- 无需触及 Node 应用程序 中的任何代码即可设置 HTTPS。否则它很棘手,如果可以利用 Node 应用程序,它可能会破坏您的 HTTPS 私钥。
- Gzip 通信可以避免 Node 应用程序中的任何更改。
- 授权。例如,Nginx 可以自动阻止不受欢迎的蜘蛛。
- 如果您有多个应用程序,Nginx 将作为一个独立的路由器。
- 还有更多...
总而言之,Nginx 会做 服务器的事情,因此开发您的应用程序时,您无需担心 Web 服务器的管理和通用配置方面。
我建议您阅读 Sandro Pasquali(Packt Publishing)的 "Deploying Node.js" 第 3 章,从第 69 页开始。
我将引用几个相关的段落:
使用 Nginx
According to http://www.linuxjournal.com/magazine/nginx-high-performance-web-server-and-reverse-proxy: "Nginx is able to serve more requests per second with less resources because of its architecture. It consists of a master process, which delegates work to one or more worker processes. Each worker handles multiple requests in an event-driven or asynchronous manner using special functionality from the Linux kernel (epoll/select/poll). This allows Nginx to handle a large number of concurrent requests quickly with very little overhead."
使用节点进行负载平衡
File serving speeds are, of course, not the only reason you might use a proxy such as Nginx. It is often true that network topology characteristics make a reverse proxy the better choice, especially when the centralization of common services, such as compression, makes sense.