Как обрабатывать запросы одного и того же юзера поочерёдно?

Для обработки запросов одного и того же пользователя поочередно в Node.js можно воспользоваться механизмом очередей. Одним из наиболее популярных инструментов для работы с очередями в Node.js является библиотека bull.

Прежде всего, необходимо установить данную библиотеку через npm:

npm install bull

Далее можно создать экземпляр очереди и добавлять в неё задания (jobs) для обработки запросов пользователя. Например, создадим очередь и добавим в неё задание для обработки запроса от пользователя:

const Queue = require('bull');
const myQueue = new Queue('userRequests');

myQueue.process(async (job) => {
    // В данной функции происходит обработка запроса пользователя
    console.log(`Обрабатывается запрос пользователя: ${job.data}`);
});

Теперь, чтобы добавить запрос пользователя в очередь, можно сделать следующее:

myQueue.add({ userId: 123, requestData: 'Some data' });

Таким образом, все запросы от одного и того же пользователя будут обрабатываться поочередно в порядке их добавления в очередь.

Кроме того, bull поддерживает различные возможности, такие как управление заданиями, обработка ошибок, повторная обработка заданий и др., что делает его мощным инструментом для работы с очередями в Node.js.