Les microservices, moteur du dimensionnement des plateformes de communications unifiées
La proximité entre les microservices et les communications unifiées n’est pas évidente au premier regard. Mais les gains en matière de flexibilité et fourniture de services sont pourtant une des clés.
Quand on aborde le thème des communications unifiées (UC – Unified Communications), l’architecture de microservices n’est pas forcément une évidence pour les entreprises. Pourtant, elle peut avoir un effet notable dans le dimensionnement des services de communications et constituer ainsi un bienfait pour les prestataires.
Les plateformes de communications unifiées, ainsi que l’infrastructure qui les sous-tend ont traditionnellement été bâties sur un monolithe, tant matériel que logiciel. Une seule application remplit toutes les fonctions de communications unifiées, telles que le contrôle des appels, la collaboration ou la collecte et l'analyse détaillées des données des appels.
La plupart des PBX (private branch exchange) sur site et des plateformes de communications unifiées sont encore monolithiques. Elles sont essentiellement déployées en tant qu'application de grande envergure sur des serveurs. Comme chaque partie de l'application est exécutée sur chaque serveur, les coûts augmentent lorsque l’application doit évoluer.
Si une telle architecture monolithique peut fonctionner à petite échelle – elle peut par exemple supporter un département de l’entreprise voire l’ensemble d’une unique entreprise -, cette approche n'est pas efficace pour un fournisseur de services ou de cloud. Avec l’accroissement fonctionnel de l'application, la plateforme se retrouve à gérer des milliers ou des centaines de milliers d'utilisateurs. Il devient alors nécessaire d’ajouter davantage de ressources de calcul à la plateforme de UC, que toutes les fonctionnalités de l'application soient utilisées ou non.
A cela s’ajoute un autre élément clé : étant donné qu'une application monolithique intègre toutes les fonctionnalités de l'application, sa mise à jour peut devenir très fastidieuse. Ce processus nécessite alors que toute l'application soit mise hors ligne, poussant les fournisseurs à créer des fenêtres d’interruption de services ou encore pour gérer les cycles de release.
Avec les microservices, la plateforme de communications unifiées est décomposée en services indépendants, ce qui permet de développer et de maintenir séparément des modules de contrôle d’appels, d'analyse ou de facturation. Cela ouvre une multitude de possibilités pour les prestataires.
En tant que modules indépendants mais intégrées, la pile de communications unifiées dans une architecture de microservices bénéficie de capacités de dimensionnement flexibles. Par exemple, tout trafic vocal supplémentaire est géré via des copies supplémentaires du service de contrôle des appels. On ne lance pas des copies supplémentaires d'une application UC monolithique. En outre, les services d'analyse, de facturation ou de collaboration n'utilisent que la quantité exacte de ressources IT pour répondre à la demande précise et ponctuelle.
Cette indépendance des composants d'une infrastructure de microservices permet de mettre en place des cycles de mise à jour et de maintenance applicative pour chacun des services, et ce de manière continue. Une mise à jour des outils d’analyse, par exemple, ne doit pas affecter une application de contrôle d'appels. Cela constitue, pour un fournisseur de services, un vecteur d’innovation, une source d’agilité et d’évolutivité.
L'architecture est un critère qu’il convient de prendre en compte dans une procédure d’évaluation d’outils de communications unifiées. Avec les microservices, tout fournisseur peut éviter les problèmes de dimensionnement qui accompagnent généralement le développement de l’entreprise.