V službe Azure Service Bus môžete sprostredkovať správu pomocou QueueClient
a MessageFactory
, Chcel by som vedieť, prečo by ste ich chceli používať nad sebou.
odpovede:
9 pre odpoveď č. 1Autobus Azure Service Bus poskytuje odlišný spôsob odosielania / prijímania správ.
- Môžete použiť
QueueClient
poslať a prijať správu do / z frontu. - Môžete použiť
TopicClient
poslať správu na tému - A môžete použiť
SubscriptionClient
na príjem správy z predplatného.
Použitím MessageSender
a MessageReceiver
, vytvoríte odosielateľa a príjemcu, ktoré sú nemenné:
var factory = MessagingFactory.CreateFromConnectionString("MyConnectionString");
A
MessageSender
môže odosielať správy do oboch tém alebo do frontu:var sender = factory.CreateMessageSender("Queue ou topic path");
A
MessageReceiver
ca prijímať správy z frontu aj z prihlásenia na odber:var receiver = factory.CreateMessageReceiver("Queue ou subscription path");
Tieto abstrakcie vám môžu poskytnúť väčšiu flexibilituAk potrebujete prejsť z frontu na tému alebo naopak, pretože potrebujete iba zmeniť cestu entity servisnej zbernice (môže to byť v konfiguračnom súbore), takže nie je potrebná žiadna zmena kódu. Použitím QueueClient
, TopicClient
, SubscriptionClient
, budete musieť zmeniť svoj kód, ak sa chcete presunúť z frontu na tému.
Takže moja rada je vždy použiť MessageReceiver
/MessageSender
keď musíte poslať / prijať správu z / do témy / prihlásenia do frontu Azure ServiceBus.
POZNÁMKA: Toto neplatí pre Eventhub, ktorý má inú implementáciu.