В настоящее время я использую Angular для моего внешнего интерфейса и Express для моего внутреннего интерфейса моего сайта.
Пользователи могут отправлять вызовы на Angular, которые инициируют запрос HTTP, и HTTP-запрос, а затем отправлять в нашу базу данных.
Проблема, с которой мы сталкиваемся, заключается в том, что если два пользователя попытаются сделать http-запрос одновременно, он отменит первый запрос для запуска второго.
Ниже приведен пример рабочегоотправьте вызов из нашего файла index.js.
router.post('/bb_rr', function (req, res) {
var id = req.body.id;
var date = req.body.date;
var sql = "CALL DATABASENAME.PROCEDURE(" + id + ",DATE'" + date + "');";
return db.read(sql)
.then((x) => {
console.log(x)
res.send(x);
})
});
Некоторые из этих вызовов процедур могут занять 1-2 минуты, поскольку они имеют много шагов.Сайт имеет более 100 вызовов.
Я видел документацию для Express, чтобы использовать fork для дочерних процессов, но он включал создание нового файла .js для каждого продолжительного вызова.Это мой единственный вариант?