• Facebook
  • Linkedin
  • Twitter
  • Youtube
Nexworld
  • Accueil
  • Expertises
    • API Management
    • Architecture SI
    • Intelligence artificielle
    • Big Data
    • Machine Learning
    • Objets Connectés
    • DevOps
  • Corporate
    • Pourquoi nexworld ?
    • Références
    • Témoignages clients
    • Équipe dirigeante
  • Formations
  • Blog
  • Carrières
    • Nous rejoindre
    • Environnement de travail
    • Campagnes RH
    • Offres d’emploi
    • Déposer une candidature
  • Contact

SOA versus microservices : évolution ou révolution ?

Les DSI ayant monté une architecture orientée service (SOA) sont nombreuses à hésiter à franchir le pas vers les microservices. Quelles sont les différences entre ces deux types d’architecture ? Quels sont les prérequis des microservices en termes de méthode et d’outillage ? Et, surtout, comment migrer de l’un à l’autre ? Réponses.

La nouveauté du microservice réside principalement dans la description fine des designs patterns à utilise

Les microservices : une autre philosophie ?

Commençons déjà par un constat clair émis par les précurseurs du microservice : cette architecture est une extension du concept de SOA. La plupart des principes de conception des microservices étaient déjà disponibles dans le monde de la SOA. Alors où est la nouveauté ? D’un point de vue conception, la nouveauté réside principalement dans la description fine des designs patterns à utiliser. La SOA nous offrait une boite à outils vaste et d’excellents principes d’architecture ; les microservices nous apportent une série de bonnes pratiques et de patrons de conception plus réduite et plus adaptée aux contraintes du moment (déploiement quotidien, time to market réduit à quelques jours, inter connexion entre les applications internes et externes, relation client multi-canal). Disons simplement qu’il s’agit d’un best of de ce que propose la SOA.

Du SOA aux microservices : nouveaux principes ?

Une architecture microservices repose sur un certain nombre de principes supposés nous garantir les points essentiels :

  • Non-adhérence entre les applications (une mise à jour corrective ou évolutive d’un module n’entraine pas le besoin de redéployer un autre module) : évolutivité et maintenabilité optimales, réduisant le time-to-market
  • Des applications sans état (possibilité d’arrêter ou redémarrer une instance de l’application sans impacter les utilisateurs) : Haute disponibilité et support de la montée en charge automatique, réduisant au maximum les risques d’indisponibilité
  • Des domaines de responsabilité clairement établis : Chaque application est responsable d’un domaine fonctionnel minimal et cohérent, éliminant les doublons de fonctionnalités entre applications, permettant la réutilisabilité des services et la construction de référentiels métiers par domaines fonctionnels à l’échelle de l’entreprise.

La granularité et le périmètre des applications doivent être revus et pensés selon une vision Domain Driven Design (DDD) pour répondre efficacement à ces enjeux.

Les microservices : une rupture technologique ?

Il existe de nombreux moyens de mettre en œuvre une architecture microservices, mais ce serait une erreur de ne pas se baser sur les technologies du moment, pensées et réalisées pour répondre précisément aux principes que nous venons d’énoncer.

Par exemple, les applications d’une architecture SOA tournent généralement sous des serveurs d’applications (Websphere, JBoss, Tomcat, etc.) sensés garantir une homogénéité des pratiques d’administration et d’exploitation (configuration des datasources, des logs, des urls de ressources externes, monitoring de l’application, administration). En architecture microservices, on va privilégier la construction d’applications autonomes (exécutables sans conteneur d’application), basées sur des frameworks tels que Spring Boot, pour bénéficier au maximum des capacités des orchestrateurs de conteneurs comme Kubernetes telles que l’autoscaling (l’adaptation du nombre d’instances disponibles d’un service en fonction des ressources consommées à un instant t). Ces applications autonomes apportent la promesse d’arrêts/relances en un temps réduit et d’une réduction des ressources physiques consommées.

De la même manière, un ESB centralisant tous les échanges inter applicatifs, pierre angulaire de la SOA, sera repensé pour être remplacé par des microservices d’orchestration formant ensemble des chorégraphies de services s’adaptant aux contextes des messages échangés. On ne construit plus une architecture figée pensée en amont, mais un SI s’autoadaptant aux évolutions rapides du marché et du SI. C’est l’ensemble des interactions entre les applications qui devient agile.

Cette nouvelle conception nécessite également de nouveaux outils de monitoring et en premier lieu un agrégateur de logs. C’est grâce à cet outil que l’on obtient une vue globale du fonctionnement du SI, basé sur l’historique réel des échanges inter applicatifs.

D‘une architecture à l’autre : quelle transition ?

Avant tout, il faut souligner ce point : la transition d’une architecture SOA à une architecture microservices n’a aucune raison de se faire dans la douleur.

Comme rappelé en introduction, tous les principes d’architectures structurant les microservices existaient déjà d’une certaine manière dans la SOA. La rupture de ce point de vue est surtout technique, avec une série d’outils modernes plus adaptés à ce nouveau contexte.

Une architecture hybride SOA (pour le legacy) / microservices (pour les nouveaux besoins) permet de gérer cette transition technologique en douceur sans prendre de retard technique sur l’enjeu principal de la DSI : répondre de manière fiable et agile aux besoins métiers de demain tout en garantissant la stabilité et l’évolutivité du système.

L’ Architecture Microservices vous intéresse ? En complément de son expertise en Architecture SI, Nexworld vous propose une formation Microservices.

Stéphane Chaillon, Architecte Senior

Formation Architecture Microservices

DÉCOUVREZ COMMENT NOTRE CABINET ACCOMPAGNERA LA TRANSFORMATION DE VOTRE ENTREPRISE

Les consultants Nexworld mettent leur expertise aux services des entreprises qui veulent accélérer leur transformation numérique. Nexworld propose des séminaires adaptée aux besoins et au SI existant de votre entreprise.

Inscriptions
  • Nexworld, champion de la croissance 2019
  • Comment développer son Chatbot avec RASA ? Seconde partie : de l’entraînement au déploiement
Nexworld élu champion de la croissance, avant tout champions de la transformation digitale grâce au savoir-faire de… https://t.co/gZzptsPtZC
h J R
NexworldFr

- 10 hours ago

Kata Containers et Google gVisor : deux approches de l'utilisation de machines virtuelles pour sécuriser des conte… https://t.co/5p4JLSj61I
h J R
NexworldFr

- 1 day ago

« Docker invente les packages CNAB et remet les informaticiens dans la boucle des DevOps. » #docker #cnab #devops… https://t.co/sIxTECX9zM
h J R
NexworldFr

- 2 days ago

Nexworld : Building the future

NEXWORLD est une SAS au capital de 300.000 € créé en Aout 2010, pour en savoir plus consultez : www.infogreffe.fr/societes/ ou www.societe.com.

facebook linkedin twitter

NEXWORLD

  • Accueil
  • Corporate
  • Nos références
  • Contact

RECRUTEMENT

  • Nous rejoindre
  • Nos campagnes et actualités
© Copyright - Nexworld | Mentions légales
  • Facebook
  • Linkedin
  • Twitter
  • Youtube
Témoignage client – Thélem Assurances Témoignage Client - Thélem Assurances Qui es-tu Pepper ? Réponse d’un robot

En poursuivant votre navigation sur ce site, vous acceptez l’utilisation de traceurs (cookies) afin de réaliser des statistiques anonymes de visites et vous permettre de partager des informations sur les réseaux sociaux. Pour en savoir plus vous pouvez paramétrer les traceurs.

 

Share This
  • Facebook
  • Twitter
  • LinkedIn

Extrait de la politique de confidentialité

Nexworld

Ce site web utilise des traceurs (cookies) afin de vous fournir la meilleure expérience possible. Un cookie est une information enregistrée dans votre navigateur. Il contient plusieurs informations nous permettant de vous reconnaître si vous revenez sur notre site. Le but est de savoir quelles pages du site et quels contenus sont les plus pertinents pour vous.
Vous pouvez paramétrer tous les cookies ci-dessous.

Cookies strictement nécessaires

Nous vous conseillons d'activer les cookies strictement nécessaires. Ils nous permettrons de sauvegarder vos préférences de cookies.

Si vous désactivez ces cookies, nous ne seront pas dans la capacité de sauvegarder vos préférences. Cela veut dire qu'à votre prochaine visite sur notre site, vous devrez de nouveau valider ou non les cookies.

Cookies analytics

Ce site utilise Google Analytics afin de collecter de façon anonyme différentes informations tel que le nombre de visiteurs sur notre site ainsi que les pages les plus populaires.
Activer ces cookies nous permet d’améliorer notre site.

Merci de bien vouloir activer les cookies strictement nécessaires dans un premier temps, afin que nous puissions enregistrer vos préférences.

Cookies social media

Ce site utilise également les cookies social media suivants :

  • Facebook
  • Linkedin

Merci de bien vouloir activer les cookies strictement nécessaires dans un premier temps, afin que nous puissions enregistrer vos préférences.

Powered by GDPR plugin
Faire défiler vers le haut