Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.06.2017, 13:07
Новичок на форуме
Отправить личное сообщение для raft Посмотреть профиль Найти все сообщения от raft
 
Регистрация: 07.06.2017
Сообщений: 3

некорректная работа nodejs
Всем привет!

Изучаю совсем недавно nodejs, на локальном сервере все проходит нормально. Решил перенести на VPS (ОС - Debian 7). Использовал команды:

curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo apt-get install -y build-essential

все стало успешно, но теперь другая проблема - на сервере также есть несколько других сайтов на WordPress, в итоге - если к любому сайту добавить порт :3000 (тот, который слушает сервер на nodejs), то все они загружают одну и ту же страницу.

Почему так происходит?
Ответить с цитированием
  #2 (permalink)  
Старый 07.06.2017, 14:22
Новичок на форуме
Отправить личное сообщение для raft Посмотреть профиль Найти все сообщения от raft
 
Регистрация: 07.06.2017
Сообщений: 3

вернее почему - понятно. так как все доменные имена на одном ip, то все эти обращения это по сути http://xxx.xxx.xxx.xxx:3000

вопрос - как сделать так, чтобы открывался только определенный домен с данным портом, остальные - попытка соединения не удалась?
Ответить с цитированием
  #3 (permalink)  
Старый 07.06.2017, 15:50
Аватар для destus
Профессор
Отправить личное сообщение для destus Посмотреть профиль Найти все сообщения от destus
 
Регистрация: 18.05.2011
Сообщений: 1,207

raft,
Есть такое понятие -- виртуальный хост https://github.com/expressjs/vhost

Вот только запускать все сайты из под одного node.js процесса не есть хорошо.
Ответить с цитированием
  #4 (permalink)  
Старый 07.06.2017, 17:45
Новичок на форуме
Отправить личное сообщение для raft Посмотреть профиль Найти все сообщения от raft
 
Регистрация: 07.06.2017
Сообщений: 3

destus,
имеется ввиду, что если один из сайтов завалит процесс, то и все остальные перестанут работать? или есть еще какие-то недостатки?

если будет, например, 5 сайтов на nodejs, то и в памяти будут висеть 5 процессов и память тоже будут кушать за пятерых? где-то видел, что один процесс ноды - это порядка 80Мб, то 12 сайтов - это 1ГБ оперативной памяти?

по поводу виртуального хоста - насколько я понял необходимо использовать или проксирующий nginx или модули самого nodejs, например, vhost. Какой вариант наиболее предпочтителен?
Ответить с цитированием
  #5 (permalink)  
Старый 07.06.2017, 19:02
Аватар для destus
Профессор
Отправить личное сообщение для destus Посмотреть профиль Найти все сообщения от destus
 
Регистрация: 18.05.2011
Сообщений: 1,207

raft,
Цитата:
имеется ввиду, что если один из сайтов завалит процесс, то и все остальные перестанут работать? или есть еще какие-то недостатки?
Именно. Все сайты работают в одном event loop. А это значит, что тормоза на одном из них (утечки памяти и т.д.), будут сказываться и на других сайтах. Нет возможности перезапустить какой-то конкретный сайт, придется перезапускать сразу все и заново их стартовать. Ну и в логах будет каша.

Цитата:
по поводу виртуального хоста - насколько я понял необходимо использовать или проксирующий nginx или модули самого nodejs, например, vhost. Какой вариант наиболее предпочтителен?
В реальном node.js приложении, перед нодой стоит nginx, который раздает статику. Для динамического контента, nginx проксирует запросы на бэкенд.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Срочно. NodeJS backend. XMPP Server. Долгосрочный проект. Удалённая работа. kromerx Работа 0 28.07.2014 18:02
Nodejs установка и работа derek AJAX и COMET 10 23.10.2012 20:52
Некорректная работа slideUp и slideDown vuler jQuery 4 25.04.2012 00:31
Некорректная работа ф-ции Dimonya Events/DOM/Window 7 15.04.2010 14:12
Некорректная работа lightwindow в ie6,7,8 nastya Internet Explorer 1 20.11.2009 07:52