Javascript-форум (https://javascript.ru/forum/)
-   Node.JS (https://javascript.ru/forum/node-js-io-js/)
-   -   Порядок выполнение при ассинхронной работе в Node.js (https://javascript.ru/forum/node-js-io-js/50204-poryadok-vypolnenie-pri-assinkhronnojj-rabote-v-node-js.html)

Criz 16.09.2014 17:13

Порядок выполнение при ассинхронной работе в Node.js
 
Есть приложение на Node.js.
У меня вопрос по изменению кода, для корректной работы в ассинхронном режиме.
1. В server.js есть такие вызовы:
app.use(require('./middleware/loadUser'));
require('./routes')(app);
app.use(function(err, req, res, next) {...}

2. В ./middleware/loadUser есть функционал получения параметров из MongoDB.
3. В require('./routes')(app); есть функционал, который использует параметры из п.2

В ряде случаев (высокая нагрузка и т.п.) п.2 не успевает выполнится до запуска п.3. В результате, не подгружаются некоторые параметры и выходят ошибки.

Как правильно задать очередность выполнения?

MallSerg 17.09.2014 10:36

Запускай действие только после наступления события

для этого используют функции обратного вызова callback


Часовой пояс GMT +3, время: 07:27.