История изменений
Исправление 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 с его сборщиком мусора, например), и повода мешать работе бизнес-логики отдачей кучи статики я тоже не вижу.