[Azure] Nouveautés de .NET Services
Une nouvelle CTP du SDK .Net Services a vu le jour au mois de Mars 2009. Elle intervient suite à des changements importants au niveau de .Net Services, dont une évolution considérable du ServiceBus.
Petit rappel de ce que permettait le ServiceBus avant cette évolution
Le ServiceBus servait juste de relais entre deux entités. Une entité envoyait des données à l’autre via le ServiceBus. L’entité réceptrice devait être en cours d’exécution, au moment du transfert des données, pour que l’acheminement soit réalisé.
Nouvelles capacités du ServiceBus
Tout d’abords, le ServiceBus permet toujours de servir de relais mais il permet maintenant de « gérer » et d’« aiguiller » les données. Les données peuvent donc maintenant avoir une durée de vie au sein du ServiceBus. En effet, le système permet maintenant de stocker et transférer ces données, selon un schéma précis, complètement indépendamment du « mode relais ».
Cette avancée majeure a été rendue possible grâce à deux nouvelles fonctionnalités, les Routeurs (Routers) et les Queues.
Commençons par détailler ces deux nouveaux éléments.
Routeur
Un routeur (router) est un système de distribution sous la forme de publication / souscription. Il reçoit donc des données qu’il peut alors transmettre aux abonnés. Le routeur peut se comporter de différentes façons en fonction de la « Policy » appliquée. Il peut dispatcher les données a tous les abonnés ou alors à un seul des abonnes de manière aléatoire ; ce qui simule donc une action de « load balancing ».
Queue
Une queue reçoit et stocke des données jusqu’a ce qu’une entité tierce vienne retirer le message de la queue (« pull ») afin de les consommer.
Association
Les routeurs et les queues peuvent s’abonner à un routeur. Les associations d’éléments permettent donc une gestion du transit des messages assez intéressante et évoluée.
Voici un exemple d’association intéressante :
Ce que ça apporte concrètement
Ca nous ouvre deux autres modes de distribution (qui peuvent donc être associés) :
- Push/Pull (Queue) : On dépose des données qui seront récupérées plus tard.
- Pub/Sub (Router) : Les données arrivent et sont directement dispatchées.
En plus de ces nouveaux modes de distribution, on peut simuler l’action de « load balancing » et donc contrôler la charge grâce au ServiceBus.
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :