一直在寻找类似于 Azure 服务总线队列的工具,其中消息传递泵用于在新消息到达时触发 OnMessage(BrokeredMessage msg)。
Does Azure Storage Queue, not have such event supported?
// Retrieve storage account from connection string
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(
CloudConfigurationManager.GetSetting("StorageConnectionString"));
// Create the queue client
CloudQueueClient queueClient = storageAccount.CreateCloudQueueClient();
// Retrieve a reference to a queue
CloudQueue queue = queueClient.GetQueueReference("myqueue");
// Get the next message
CloudQueueMessage retrievedMessage = queue.GetMessage();
//Process the message in less than 30 seconds, and then delete the message
queue.DeleteMessage(retrievedMessage);
最佳答案
Azure 存储队列本身不支持此功能。客户端需要轮询队列以检查该队列中是否有新消息。
您可以使用函数或 WebJobs 触发器来模拟基于事件的行为。然而,每当他们在队列中发现消息时,他们就会在内部轮询队列并调用函数/webjob(或者换句话说引发事件)。
关于c# - Azure 存储队列是否没有新消息到达事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49858181/