问题
I have seen most queue example as the polling mechanism . Is it possible to change it to listner of the queue. Because polling may affect the performance of the worker.
回答1:
Both Windows Azure Storage Queues and Windows Azure Service Bus Queues utilize polling and do not have a notification feature per se; however, Windows Azure Service Bus Queues do support long polling which is as close to a notification approach as you can get currently. When you use the Receive method from MessageReceiver it will use long polling (meaning it will request a message and if there isn't one in the queue the server won't immediately respond, but will wait a period of time until either a message comes into the queue when it will respond to the client, or until an idle time passes in which case it will return a response with no message. The Receive method by itself will give the impression of a synchronous call to get a message and will not return until a message appears, but it has overloads to allow for idle times so you don't get into an infinite wait).
In Service Bus Topics you can set up as a subscriber, but you will still be polling the topic to get your messages, so I don't think that is at the heart of what the OP is asking.
回答2:
Using Windows Azure Queue, your only option is polling. While with the Service Bus Topics/Subscription, you can have full pub/sub model, where your subscriber will be a "listener".
来源:https://stackoverflow.com/questions/11737360/writing-a-listner-to-azure-queue