Auteur : Frédéric Vinzent

Micro-services et API first

L’architecture applicative, nouvelle génération

API Getty Images

La réactivité d’évolution d’un SI métier, rendue nécessaire par la réussite commerciale, les demandes croissantes des clients, la montée en charge ou les exigences du « time to market » requiert la mise en place de nouvelles formes architectures applicatives, différentes des systèmes monolithiques et omnipotents développés jusqu’à aujourd’hui.

Pour une plus grande modularité et une plus grande adaptabilité, la solution passe désormais par la mise en place d’une architecture éclatée, micro-services, développée selon une orientation API first, plus facilement maintenable et dont chaque brique peut être capitalisée pour d’autres usages. Expert des technologies web open source, Alter Way répond à ce type de problématique, dans le cadre de développements spécifiques, à l’aide du framework Symfony 3.

Applications monolithiques, rigides, difficiles à faire évoluer

Les applications monolithiques développées pour traiter tous les besoins en un seul système homogène, reposent à la fois sur une seule technologie et sur une seule stratégie de base de données dont toutes les évolutions fonctionnelles doivent tenir compte. L’héritage des principes posés, lors de la fondation du socle applicatif, devient à la longue une contrainte parfois incompatible avec les nouveaux besoins métiers. Le traitement de la croissance et de la montée en charge est souvent résolu sur ce type d’architecture par une duplication des sous-systèmes et une inflation de l’infrastructure d’hébergement.

Avec le temps et les exigences dictées par l’usage, un tel système devient difficilement maintenable, et toute nouvelle évolution ne fait que creuser la dette technique, rendant d’autant plus difficile encore la mise en œuvre de l’évolution suivante. Le manque d’élasticité de la plateforme incapable de s’adapter aux besoins croissants conduit à des taux d’indisponibilité de plus en plus importants. Les pratiques de développement et les outils qui entourent ce type de système ont par ailleurs été mis en place lors de la conception du dispositif et méritent eux aussi d’évoluer vers des solutions plus modernes et plus efficaces.

Solution Alter Way

Une architecture micro services API first consiste à concevoir un nouvel applicatif comme une composition de services capables d’évoluer et de s’interfacer indépendamment les uns des autres, pour plus de souplesse et d’interopérabilité :

  • Stratégie de modélisation des données appliquée à chaque service.
  • Composants de la plateforme développés avec des technologies éventuellement différentes, selon la pertinence, les besoins fonctionnels ou les langages déjà en place.
  • Base de données unique par service, consommée selon une logique « multi-tenant » pour une gestion multi clients.
  • Principe d’une collaboration inter applicative posé dès la fondation du dispositif facilitant l’interconnexion ultérieure à de nouvelles applications grâce à l’orientation API first.

L’approche modulaire permet aux développeurs et aux opérationnels de reconsidérer leur stratégie de scalabilité selon des préoccupations devOps : - Anticipation de l’indisponibilité des services et réduction des coûts afférents. - Correction de l’indisponibilité et anticipation des besoins futurs. - Réduction du temps passé à la recherche et résolution des défaillances techniques. - Plus de temps pour le développement de nouvelles fonctionnalités, services ou produits.

La proposition de valeur d’Alter Way pour le développement spécifique d’applicatifs métier repose sur un accompagnement complet dans la mise en place d’outils et de pratiques nécessaires pour ce nouveau type d’architecture.

Après analyse et spécification de vos besoins, la plupart du temps selon un séquencement Agile, nous construisons une architecture micro services, DDD et API first. Nous mettons à votre disposition notre savoir-faire devOps en accompagnant vos équipes à passer notamment d’un versionning SVN à Git, d’une plateforme d’intégration continue Jenkins à une plateforme GitLab-ci, ou d’un déploiement matériel à une virtualisation à l’aide par exemple de Docker.

Nous privilégions le framework PHP Symfony 23 pour le développement proprement dit. Notre équipe compte des architectes capables de modéliser l’architecture décrite plus haut, des lead développeurs et des développeurs confirmés, expérimentés sur le développement d’applicatifs web pour des pure players ou des institutionnels.

L’architecture conçue par Alter Way autorise des enrichissements réguliers selon des cycles courts, permettant de répondre aux sollicitations des clients dans les délais du marché, de réduire la dette technique à son minimum, pour plus de dynamisme et de réactivité.

source visuel : Solutions API de Getty Images