BT

Diffuser les Connaissances et l'Innovation dans le Développement Logiciel d'Entreprise

Contribuez

Sujets

Sélectionner votre région

Accueil InfoQ Actualités Le Framework Pour Microservices Lagom 1.5 Avec Akka Management Et Support Kubernetes Et OpenShift

Le Framework Pour Microservices Lagom 1.5 Avec Akka Management Et Support Kubernetes Et OpenShift

La dernière version du framework pour microservices Lagom est fournie avec Akka Management, un ensemble d’outils permettant d’exploiter des applications utilisant Akka, ainsi qu’une prise en charge du déploiement avec Kubernetes ou OpenShift. La version 1.5 récemment publiée est basée sur Play 2.7.0Alpakka Kafka 1.0 et Akka 2.5.22. Elle prend également en charge Couchbase et gRPC via Akka gRPC.

Les nouveaux outils Akka Management permettent une inspection à distance de l'état du système d'acteurs Akka via un endpoint HTTP dédié. Lagom ajoute également par défaut quelques routes au endpoint pour les vérifications de l'état (health checks).

Le nouvel outil a également permis d’introduire Akka Cluster Bootstrap, qui découvre les nœuds existants dans l’environnement, au lieu d'utiliser une liste statique de nœuds d’origine. L'équipe Akka recommande de migrer vers le nouveau Bootstrap Cluster, car ils le trouvent à la fois plus simple et plus robuste.

Avec la nouvelle version, Lightbend Orchestration n'est plus pris en charge en raison de l'accroissement de frictions et de la flexibilité réduite apportées au déploiement. À l'avenir, il n'y aura pas de traitement automatisé des déploiements; au lieu de cela, la recommandation est de le faire manuellement. Pour les déploiements ciblant les environnements OpenShift ou Kubernetes, l'équipe a rédigé un guide sur la procédure de déploiement d'applications Lightbend.

Le support en incubation (non entièrement testé, avec peut-être des fonctionnalités limitées) pour la communication inter-services gRPC est introduit pour offrir aux développeurs davantage d'alternatives en matière de transport, en plus du transport HTTP / JSON existant, augmentant, espérons-le, l'adoption de leurs services. gRPC nécessite HTTP / 2, mais cela est déjà supporté par Lagom.

La prise en charge de Couchbase est une autre fonctionnalité intéressante, qui ajoute une alternative supplémentaire pour les entités persistantes (une Aggregate root en termes DDD) et les processeurs côté lecture (responsables du modèle de lecture) via le module Akka Persistence Couchbase. Lagom supporte déjà Cassandra, PostgreSQL, MySQL, Oracle et H2.

Les autres améliorations comprennent :

  • Prise en charge de base de TLS tant en mode de développement que dans les tests au moyen de certificats auto-signés fournis par le framework
  • Routeurs supplémentaires, donnant la possibilité d'étendre les routes exposées par un service
  • Support en incubation de Java 11

Un guide pour la migration de Lagom 1.4 à 1.5 est disponible. Pour la migration à partir de versions antérieures, il est recommandé de commencer par mettre à niveau vers la dernière version de 1.4 avant de migrer vers la version 1.5.

Une version mise à jour 1.5.1 a également été publiée, qui ajoute une nouvelle implémentation de localisateur de service (Service Locator) basée sur la découverte de services d'Akka. Il s'agit d'un remplacement du localisateur de Lightbend Orchestration, qui a été supprimé dans la version 1.5.

Lagom est un framework de microservices open source pour Java et Scala basé sur Akka et Play. Lagom est spécialement conçu pour les applications réactives avec CQRS et Event Sourcing comme fondations principales.

Dans une interview avec Jonas Bonér, CTO de Lightbend et créateur d'Akka, lors de la première sortie de Lagom, il a expliqué que la plupart des frameworks de microservices disponibles visent à faciliter la création de microservices individuels, ce qui est la partie la plus facile. Lagom étend cela aux systèmes de microservices, grands systèmes - ce qui est difficile, car nous sommes ici confrontés à la complexité des systèmes distribués.

Evaluer cet article

Pertinence
Style

Contenu Éducatif

BT