Задать вопрос
@procode
Разработчик

Обязательно ли использовать коллбэки или промисы при работе с базой mysql?

Здравствуйте. Это вопрос про производительность и однопоточность в Nodejs которую я пока понимаю слабо))

У меня простейшее api с модулем mysql.

Скрипт с клиента обращается к api -> делается запрос в базу -> данные отдаются клиенту в json.

Вопрос:

- Надо ли мне оборачивать запрос к базе в async/await (или другой вариант асинхронного запроса) в самом api (НЕ в клиенте)?

И если да - то почему? -)

Заранее спасибо.
  • Вопрос задан
  • 82 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 2
DevMan
@DevMan
потому что иначе, в силу своей однопоточности, нода впадет в ступор и займётся обработкой только этого клиента, а остальные будут терпеливо ждать своей очереди (если таймаут не случится раньше).
есть разные способы решения таких затыков, но есть одно простое правило - не должно быть блокирующих операций.
Ответ написан
Комментировать
@procode Автор вопроса
Разработчик
Нагуглил я ответ))

https://habr.com/ru/post/150788/

Добрый человек не поленился описать суть проблемы с примерами кода.

Респект и уважуха
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@vshvydky
Ответ, надо погружаться в базу языка и ноды и только потом начинать писать код. Сейчас другие ответы не важны, сама суть ноды тебе не ясна, отсюда и косвенные вопросы.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы