Plan du cours

Jour 1 : Fondements de l'architecture orientée événement dans Go

  • Introduction à EDA
    • Qu'est-ce que l'architecture orientée événement ?
    • Comparaison des systèmes monolithiques, Microservices et orientés événements
    • Comment le modèle de concurrence et les goroutines légères de Go en font un choix idéal pour EDA
  • Concepts de base et avantages
    • Découplage, scalabilité et résilience dans les systèmes d'entreprise
    • Définition des événements, producteurs, consommateurs et brokers d'événements
    • Exemples concrets et études de cas où Go alimente des systèmes événementiels haute performance
  • Théorème CAP et compromis dans EDA
    • Aperçu de la cohérence, de la disponibilité et de la tolérance aux partitions
    • Impact de EDA sur ces propriétés
    • Stratégies pour équilibrer la cohérence et la disponibilité dans les systèmes basés sur Go

Jour 2 : Événements, messages et modèles Communication dans Go

  • Comprendre les types d'événements
    • Événements de domaine vs événements d'intégration
    • Événements synchrone vs asynchrone dans les applications Go
  • Modes opératoires des messages en pratique
    • Publish-Subscribe (Pub/Sub) dans Go 
    • Comment concevoir et structurer les charges d'événements en utilisant JSON, Protocol Buffers ou Avro dans Go
  • Mise en œuvre du traitement des événements dans Go
    • Aperçu des bibliothèques et frameworks populaires pour le messaging 
    • Exemples de code : dispatching et traitement des événements en utilisant les modèles idiomatiques de Go
    • Séance pratique : Construction d'un service orienté événement simple dans Go

Jour 3 : Systèmes de messagerie et brokers d'événements avec Go

  • Sélection et intégration des brokers d'événements
    • Aperçu des brokers populaires : Apache Kafka, RabbitMQ et NATS
    • Comparaison des cas d'utilisation et des meilleures pratiques pour les systèmes basés sur Go
  • Mise en place de l'infrastructure de messagerie
    • Configuration Compose pour Kafka, RabbitMQ ou NATS
    • Configuration des sujets, échanges, files d'attente et canaux
    • Aperçu des bibliothèques clientes de Go
  • Séance pratique
    • Construction d'un microservice Go échantillon qui produit et consomme des événements
    • Intégration du service avec le broker d'événements choisi
    • Débogage et test des flux d'événements

Jour 4 : Déploiement, surveillance et sujets avancés dans Go EDA

  • Déploiement des applications orientées événements Go sur Kubernetes
    • Conteneurisation des applications Go pour la production
    • Déploiement de Kafka (ou autres brokers) sur les clusters Kubernetes
    • Introduction à KEDA (Kubernetes Event-Driven Autoscaling) pour l'échelle des consommateurs d'événements
  • Gestion des erreurs et surveillance
    • Gestion des échecs d'événements avec des stratégies 
    • Mise en œuvre de l'observabilité dans les services Go
  • Sujets avancés et Q&A
    • Exploration des architectures événementielles sans serveur avec Go
    • Chorégraphie vs Orchestration d'événements : cas d'utilisation et considérations de conception
    • Pitfalls courants, leçons apprises et meilleures pratiques
    • Séance Q&A ouverte et dépannage interactif

 


Pré requis

Go (Golang) compétences en programmation, y compris la concurrence (goroutines, channels)
Compréhension de base des architectures logicielles (monolithes, microservices)
Familiarité avec Docker et Docker Compose
Connaissance de base des API REST et du réseau
Expérience avec les outils CLI et Git
Facultatif : Exposition aux systèmes de messagerie (Kubernetes, Kafka, RabbitMQ, NATS)
 
 28 Heures

Nombre de participants


Prix ​​par Participant

Nos clients témoignent (7)

Cours à venir

Catégories Similaires