
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
10.08.2019, 22:20
|
|||
|---|---|---|---|
Обновление приложения nodejs |
|||
|
#18+
Здравствуйте. Собственно вопрос) а как корректно? Есть в принципе несколько вариантов. Есть даже возможность отслеживать изменения файлов и перегружать приложение. Есть вариант через nginx что то типа отказоустойчивого кластера. Два приложения, одно останавливаем, запросы идут на второе. Первое обновляем—запускаем В принципе все эти способы хороши. Но у все у них имеется момент остановки сервера. Соответственно те запросы, которые обрабатываются в момент остановки сервера обломятся. Есть ли вариант сделать обновление без «облома» текущих соединений? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.08.2019, 11:11
|
|||
|---|---|---|---|
Обновление приложения nodejs |
|||
|
#18+
SwvЗдравствуйте. Собственно вопрос) а как корректно? Есть в принципе несколько вариантов. Есть даже возможность отслеживать изменения файлов и перегружать приложение. Есть вариант через nginx что то типа отказоустойчивого кластера. Два приложения, одно останавливаем, запросы идут на второе. Первое обновляем—запускаем В принципе все эти способы хороши. Но у все у них имеется момент остановки сервера. Соответственно те запросы, которые обрабатываются в момент остановки сервера обломятся. Есть ли вариант сделать обновление без «облома» текущих соединений? Ну Front можно..Например кога разрабатываешь на react ,файл изменил и тут же в браузере перерисовалось,а вот back нет(Или надо делать инжениринг выгрузки с горячей компиляцией,и тут node надо знать как будто Вы сами её создали) Ибо node предкомпилирует файлы и в памяти и уже использует там.Замена файла на Back вообще ничего не даст.Надо node server остановить/запустить и она скомпилирует новый, и новая логика пошла в работу) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.08.2019, 15:44
|
|||
|---|---|---|---|
Обновление приложения nodejs |
|||
|
#18+
irbis_alSwvЗдравствуйте. Собственно вопрос) а как корректно? Есть в принципе несколько вариантов. Есть даже возможность отслеживать изменения файлов и перегружать приложение. Есть вариант через nginx что то типа отказоустойчивого кластера. Два приложения, одно останавливаем, запросы идут на второе. Первое обновляем—запускаем В принципе все эти способы хороши. Но у все у них имеется момент остановки сервера. Соответственно те запросы, которые обрабатываются в момент остановки сервера обломятся. Есть ли вариант сделать обновление без «облома» текущих соединений? Ну Front можно..Например кога разрабатываешь на react ,файл изменил и тут же в браузере перерисовалось,а вот back нет(Или надо делать инжениринг выгрузки с горячей компиляцией,и тут node надо знать как будто Вы сами её создали) Ибо node предкомпилирует файлы и в памяти и уже использует там.Замена файла на Back вообще ничего не даст.Надо node server остановить/запустить и она скомпилирует новый, и новая логика пошла в работу) Да нет. Есть решения, когда меняешь файлы проекта, нода это замечает и сама перезапускается. Вопрос в другом) возможно ли избежать того, чтоб нода не перегружалась, когда она выполняет входящие запросы. Ведь если при перезапуске ноды есть обрабатываемые входящие запросы, то они обломятся ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.08.2019, 15:52
|
|||
|---|---|---|---|
Обновление приложения nodejs |
|||
|
#18+
Вот он ответ) nginx -s reload Создаем новую конфигурацию nginx с отправлением запросов на другую ноду, стартуем другую ноду. Выполняем команду выше. Она перегружает конфигурацию, новые запросы идут на новую ноду, старые выполняются. Минут через пять можно первую ноду остановить) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=22&mobile=1&tid=1443691]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
26ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
| others: | 13ms |
| total: | 132ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...