Я новичок в этом, и, возможно, я неправильно понял всю концепцию, я хотел иметь постоянное фоновое задание в контейнере, который непрерывно получает сообщения от служебной шины Azure.Будут времена, когда не будет сообщений в течение более часа, и будут времена, когда сообщения будут поступать во время затопления.
Я настроил свою шину в Node.JS, как показано ниже.
Теперь, когда в течение определенного промежутка времени нет сообщений, он будет преобразован в пустой массив, как указано в idleTimeoutInSeconds.Предназначена ли служебная шина Azure так, как я ожидал?Если нет, то есть что-то более подходящее, что я могу использовать для решения этой проблемы?
Мне нужно что-то, что работает постоянно и реагирует на отправку новых сообщений.
РЕДАКТИРОВАТЬ: веб-сервер не нужно работать в некоторыхсценарии, хотя это было бы хорошо подходит.
async function main(){
const sbClient = ServiceBusClient.createFromConnectionString(connectionString);
const queueClient = sbClient.createQueueClient(queueName);
const receiver = queueClient.createReceiver(ReceiveMode.ReceiveAndDelete);
try {
while(true){
const messages = await receiver..receiveMessages(10);
console.log("Received messages:");
console.log(messages.map(message => message.body));
}
} finally {
await sbClient.close();
}
}
main().catch((err) => {
console.log("Error occurred: ", err);
});