Подтвердить что ты не робот

В чем преимущество использования NginX для Node.js?

Из того, что я понимаю, Node.js не нуждается в NginX для работы в качестве http-сервера (или сервера веб-серверов или любого сервера, если на то пошло), но я продолжаю читать о том, как использовать NginX вместо Node.js внутренний сервер и не может найти хорошую причину для этого.

4b9b3361

Ответ 1

Здесь http://developer.yahoo.com/yui/theater/video.php?v=dahl-node Node.js автор говорит, что Node.js все еще находится в разработке, поэтому могут возникнуть проблемы с безопасностью что NginX просто скрывает.
С другой стороны, в случае интенсивного трафика NginX сможет разделить работу между многими серверами Node.js.

Ответ 2

Но будьте готовы: nginx не поддерживает http 1.1 во время разговора с backend, поэтому такие функции, как keep-alive или websockets, не будут работать, если вы поместите node за nginx.

UPD: см. nginx 1.2.0 - socket.io - HTTP/1.1 - соединения прокси-сервера прокси для получения более актуальной информации.

Ответ 3

В дополнение к предыдущим ответам, есть еще одна практическая причина использовать nginx перед Node.js, и это просто потому, что вы можете запустить более одного приложения Node на своем сервере.

Если приложение Node прослушивает порт 80, вы ограничены этим приложением. Если nginx прослушивает порт 80, он может проксировать запросы к нескольким Node приложениям, запущенным на других портах.

Также удобно передавать TLS/SSL/HTTPS в Nginx. Выполнение TLS непосредственно в Node возможно, но его дополнительная работа и склонность к ошибкам. С Nginx (или другим прокси) перед вашим приложением вам не нужно беспокоиться об этом, и есть инструменты, которые помогут вам безопасно настроить его.