@g23rom

Много пользователей на express js. Как сделать что бы поток не блокировался?

А как сделать так что бы express js не блокировался когда идёт сложный процесс.
Cайт построен на express js, страницы генерируются на сервере
Сайт запускается только локально, но хочу опубликовать его

И в связи с этим у меня два вопроса
1. Один запрос скажет обратился к БД, а запрос занял пол секунды и в эти пол секунды, остальные 20 пользователей тоже отправили запросы и получилось что у последнего пользователя ожидание будет 10 секунд! Можно ли это как-то исправить? или придётся делать второй сервер и туда отдавать загрузку файлов? Хоть подскажите куда смотреть? Я сделал через await'ы,

2. А бывает у ноды такое что она случайно отдаёт запрос другому пользователю?
  • Вопрос задан
  • 80 просмотров
Пригласить эксперта
Ответы на вопрос 1
Fragster
@Fragster
помогло? отметь решением!
1. Если запрос обратился к БД никто ничего ждать не будет, запросы к бд как правило асинхронные. Даже через await'ы. Пока идет запрос (и прочий асинхронный io) основной поток будет обрабатывать другие запросы.
Если недостаточно производительности и есть свободные ядра процессора, то можно сделать несколько потоков с помощью модуля cluster https://stackoverflow.com/questions/14405693/using...

2. Если руки у программиста кривые, то бывает. Если все делать правильно - то нет. Но это уже не подходит под "случайно".
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы