Plan du cours

Jour 1 : Fondations de l'architecture orientée événements dans Go

  • Introduction à EDA
    • Qu'est-ce que l'architecture orientée événements ?
    • 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 font de lui un choix idéal pour EDA
  • Concepts fondamentaux & 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 réels et études de cas où Go alimente des systèmes événementiels à haute performance
  • Theorème CAP & compromis dans EDA
    • Aperçu de la Consistance, 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 de travail d'événements avec 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 la messagerie en Go 
    • Exemples de code : diffusion et traitement d'événements en utilisant des modèles idiomatiques Go
    • Séance pratique : Construire un service orienté événement simple dans Go

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

  • Choix 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 Docker Compose pour Kafka, RabbitMQ ou NATS
    • Paramétrage des sujets, échanges, files d'attente et canaux
    • Aperçu des bibliothèques clients Go
  • Séance pratique
    • Construction d'un microservice échantillon en Go 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 en 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 d'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 & questions-réponses
    • Exploration des architectures orientées événements 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 questions-réponses ouverte et dépannage interactif

 

Pré requis

  • Maîtrise de Go (Golang), y compris l'utilisation des goroutines et des canaux
  • Compréhension de base des modèles d'architecture logicielle tels que les monolithes et les microservices
  • Familiarité avec Docker et Docker Compose
  • Connaissance de base des API REST et des concepts de réseaux
  • Expérience avec les outils en ligne de commande et Git
  • Optionnel mais utile : exposition préalable à Kubernetes et aux systèmes de messagerie comme Kafka, RabbitMQ, ou NATS

Public cible

  • Développeurs Go construisant des applications événementielles et évoluables
  • Ingénieurs logiciels en transition depuis les architectures monolithiques ou basées sur REST vers des systèmes asynchrones
  • DevOps et ingénieurs cloud travaillant avec des microservices conteneurisés ou distribués
  • Architectes techniques et concepteurs de systèmes explorant les modèles EDA en utilisant Go
 28 Heures

Nombre de participants


Prix ​​par Participant

Nos clients témoignent (7)

Cours à venir

Catégories Similaires