LINUX.ORG.RU

История изменений

Исправление ChALkeR, (текущая версия) :

Вот да, ты это несколько сумбурно описал, но примерно прав.

Бизнес-логика на ноде пишется легко, но особого повода _не_ использовать nginx для статики нету, а плюсы довольно заметны.

nginx заточен под конкретную вещь и умеет делать её хорошо — почему бы не использовать его? Там требуется только минимальная настройка, так что минусы пренебрежительно малы.

Если твоя бизнес логика хоть где-то синхронно тормозит (например, что-то считает и ты это не вынес) — она тормозит _все_ запросы. И лучше бы ты отделил логику от статики, чтобы загрузка статики не тормозилась этим. Хотя вообще лучше статику/хранилище файлов/всё такое на отдельные сервера выносить (по причине канала, хотя бы), но это если у тебя есть возможность.

С nginx работает искоробочный letsencrypt вообще без каких-либо значимых телодвижений. Альтернативный клиент для letsencrypt на жс — greenlock — довольно громоздкий, плюс не официальный клиент насколько я знаю. Я бы его в свои зависимости не тянул. По поводу скрутки Node.js и официального клиента letsencrypt я не в курсе, смотреть надо.

Плюс статику nginx отдаёт всё-таки быстрее (там пайплайн отдачи файлов проще и не проходит через V8 с его сборщиком мусора, например), и повода мешать работе бизнес-логики отдачей кучи статики я тоже не вижу.

Короче, лично я использую Node.js за nginx-ом.

Исправление ChALkeR, :

Вот да, ты это несколько сумбурно описал, но примерно прав.

Бизнес-логика на ноде пишется легко, но особого повода _не_ использовать nginx для статики нету, а плюсы довольно заметны.

nginx заточен под конкретную вещь и умеет делать её хорошо — почему бы не использовать его? Там требуется только минимальная настройка, так что минусы пренебрежительно малы.

Если твоя бизнес логика хоть где-то синхронно тормозит (например, что-то считает и ты это не вынес) — она тормозит _все_ запросы. И лучше бы ты отделил логику от статики, чтобы загрузка статики не тормозилась этим. Хотя вообще статику/хранилище файлов/всё такое на отдельные сервера выносить (по причине канала, хотя бы), но это если у тебя есть возможность.

С nginx работает искоробочный letsencrypt вообще без каких-либо значимых телодвижений. Альтернативный клиент для letsencrypt на жс — greenlock — довольно громоздкий, плюс не официальный клиент насколько я знаю. Я бы его в свои зависимости не тянул. По поводу скрутки Node.js и официального клиента letsencrypt я не в курсе, смотреть надо.

Плюс статику nginx отдаёт всё-таки быстрее (там пайплайн отдачи файлов проще и не проходит через V8 с его сборщиком мусора, например), и повода мешать работе бизнес-логики отдачей кучи статики я тоже не вижу.

Короче, лично я использую Node.js за nginx-ом.

Исправление ChALkeR, :

Вот да, ты это несколько сумбурно описал, но примерно прав.

Бизнес-логика на ноде пишется легко, но особого повода _не_ использовать nginx для статики нету, а плюсы довольно заметны.

nginx заточен под конкретную вещь и умеет делать её хорошо — почему бы не использовать его? Там требуется только минимальная настройка, так что минусы пренебрежительно малы.

Если твоя бизнес логика хоть где-то синхронно тормозит (например, что-то считает и ты это не вынес) — она тормозит _все_ запросы. И лучше бы ты отделил логику от статики, чтобы загрузка статики не тормозилась этим. Хотя вообще статику/хранилище файлов/всё такое на отдельные сервера выносить (по причине канала, хотя бы), но это если у тебя есть возможность.

С nginx работает искоробочный letsencrypt вообще без каких-либо значимых телодвижений. Аналог на ноде и жс — greenlock, довольно громоздкий, плюс не официальный клиент насколько я знаю. Я бы его в свои зависимости не тянул. По поводу скрутки Node.js и официального клиента letsencrypt я не в курсе, смотреть надо.

Плюс статику nginx отдаёт всё-таки быстрее (там пайплайн отдачи файлов проще и не проходит через V8 с его сборщиком мусора, например), и повода мешать работе бизнес-логики отдачей кучи статики я тоже не вижу.

Короче, лично я использую Node.js за nginx-ом.

Исходная версия ChALkeR, :

Вот да, ты это несколько сумбурно описал, но примерно прав.

Бизнес-логика на ноде пишется легко, но особого повода _не_ использовать nginx для статики нету, а плюсы довольно заметны.

nginx заточен под конкретную вещь и умеет делать её хорошо — почему бы не использовать его? Там требуется только минимальная настройка, так что минусы пренебрежительно малы.

Если твоя бизнес логика хоть где-то синхронно тормозит (например, что-то считает и ты это не вынес) — она тормозит _все_ запросы. И лучше бы ты отделил логику от статики, чтобы загрузка статики не тормозилась этим. Хотя вообще статику/хранилище файлов/всё такое на отдельные сервера выносить (по причине канала, хотя бы), но это если у тебя есть возможность.

С nginx работает искоробочный letsencrypt вообще без каких-либо значимых телодвижений. Аналог на ноде и жс — greenlock, довольно громоздкий, плюс не официальный клиент насколько я знаю. Я бы его в свои зависимости не тянул. По поводу скрутки Node.js и официального клиента letsencrypt я не в курсе, смотреть надо.

Плюс статику nginx отдаёт всё-таки быстрее (там пайплайн отдачи файлов проще и не проходит через V8 с его сборщиком мусора, например), и повода мешать работе бизнес-логики отдачей кучи статики я тоже не вижу.