2012-12-06 18 views
6

Mam kilka godzin na zapoznanie się z architekturą magistrali usług Azure. Zastanawiam się, czy ta kolejkowa technologia może być używana do obsługi routingu wiadomości - coś podobnego do zdolności routingu RabbitMQ. http://www.rabbitmq.com/tutorials/tutorial-four-python.htmlRouting wiadomości w usłudze Windows Azure Service Bus

Zamiast tego użyjemy bezpośredniej wymiany. Algorytm routingu za bezpośrednią wymianą jest prosty - wiadomość trafia do kolejek, których wiążący klucz dokładnie odpowiada kluczowi routingu wiadomości.

W tej konfiguracji widzimy bezpośrednią wymianę X z dwiema kolejkami związanymi z nią: Pierwsza kolejka jest powiązana z pomarańczowym kluczem powiązania, a druga z numerem ma dwa powiązania, jeden z kluczem wiążącym czarny, a drugi z zielonym.

W takiej konfiguracji komunikat opublikowany na giełdzie z kluczem routingu pomarańczowy zostanie skierowany do kolejki Q1. Wiadomości z kluczem routingu czarny lub zielony przejdą do Q2. Wszystkie pozostałe wiadomości zostaną odrzucone.

Poszukuję kogoś z głębokim zrozumieniem architektury magistrali usług, aby polecić najlepszy wektor do realizacji tego rodzaju kolejki.

Odpowiedz

6

Windows Azure serwisowe tematy i subskrypcje autobusowe pozwalają zrobić dokładnie to samo:

enter image description here

Porównajmy obraz do swojej przykład:

  • Bezpośrednia wymiana X będzie DataCollectionTopic na zdjęciu.
  • Q1 będzie DashboardSubscription (z Filter zestaw do Redmond)
  • Q2 byłoby Inventory Subscription (bez Filter, co oznacza, że ​​to odbieranie wszystkich wiadomości).

To naprawdę bardzo proste. Twoi klienci wysyłają wiadomość do tematu (podobna do kolejki) i mogą dodać niektóre metadane do tej wiadomości (może to być użyte jako binding key). Teraz nie czytasz wiadomości z samego tematu, temat będzie przekazywał wiadomości do wszystkich subskrypcji. Aby wdrożyć routing wiadomości, wystarczy ustawić filtr na jednej lub kilku subskrypcjach, używając składni podobnej do SQL.

Samouczek w języku Python: How to Use Service Bus Topics/Subscriptions

+0

Całkowicie. To jest świetna odpowiedź i świetna funkcjonalność. – Kenn