Nodejs: сообщения Redis Beequeue UnAcked не получены - PullRequest
0 голосов
/ 26 февраля 2020

У меня есть очередь, которая поддерживает задания для пользователей (job.id - идентификатор пользователя) Никакие два задания в очереди не должны иметь одинаковый идентификатор пользователя. У меня есть 2 приложения, одно - отправитель, другое - получатель. После того, как обработка задания завершена, ACK получения получает задание.

В случае, если подтверждение (выполнено ()) не отправлено после этого при получении, когда приемник снова запускается, задание не выбирается.

Отправитель

const Queue = require('bee-queue');
const addQueue = new Queue('addition',{storeJobs: true,removeOnSuccess: true,
removeOnFailure: true});

async function start() {
    const job = await addQueue.createJob({x: 2, y: 3})
                    .setId('Bulk')
                    .save();
    console.log("job.id",job.id) 
}

start()

Получатель

const Queue = require('bee-queue');
const addQueue = new Queue('addition',{storeJobs: true,removeOnSuccess: true,
    removeOnFailure: true});

function receive() {
    addQueue.process(1,function (job,done) => {
        let id = job.id //after restart job is not received
        console.log(`Processing job ${job.id}`);
        //done() 
    });
}
receive()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...