Architecture logicielle
12 guides · environ 2 heures de lecture
Cette page a été traduite de l'anglais avec l'aide de l'IA, puis vérifiée par rapport à l'original. Lire la version anglaise
L'architecture, c'est l'ensemble des décisions coûteuses à changer. Ce parcours vous donne le vocabulaire et les compromis derrière les grands styles — en couches et n-tiers, orienté services, microservices, domain-driven design, réactif — ainsi que les préoccupations transverses qui décident si un système résiste à la production : conception et gestion d'API, performance et tests de charge, transactions distribuées et frameworks d'architecture d'entreprise.
À qui s'adresse ce parcours
- Développeurs seniors qui évoluent vers l'architecture
- Architectes qui formalisent leurs connaissances
- Responsables techniques qui évaluent des conceptions
Parcours d'apprentissage
Lisez dans l'ordre pour suivre un cours complet, ou choisissez le sujet dont vous avez besoin.
- 1Architecture en couches et n-tiers : tiers, couches et règle de dépendanceCe qui distingue un tier d'une couche, l'évolution des systèmes à deux, trois et n tiers, comment garder la logique métier testable et les pièges du découpage.Débutant11 min de lecture
- 2Architecture orientée services (SOA) et bus de services d'entreprise (ESB)Pourquoi la SOA est née des silos applicatifs, ce qui fait un service, comment SOAP, WSDL et l'ESB s'articulent, et ce qui la distingue des microservices.Intermédiaire14 min de lecture
- 3Microservices : frontières de service, déploiement indépendant et coût réelCe qu'exige vraiment le style microservices (déploiement autonome, données par service, frontières saines) et comment savoir si vous en avez besoin.Intermédiaire13 min de lecture
- 4Patterns de conception microservices : résilience, découverte, données et observabilitéUn catalogue pratique des patterns microservices : gateway, découverte, circuit breaker, bulkhead, retry, saga, outbox, CQRS et service mesh.Avancé11 min de lecture
- 5Domain-Driven Design : langage omniprésent, agrégats et bounded contextsComment le DDD construit le logiciel autour d'un modèle partagé du métier : bounded contexts, agrégats en Java, context maps et architecture hexagonale.Avancé11 min de lecture
- 6Conception d'API REST : ressources, sémantique HTTP, versionnement et erreursConcevoir des API HTTP qui vieillissent bien : modélisation des ressources, méthodes et statuts, pagination, versionnement, erreurs RFC 9457 et ETag.Intermédiaire12 min de lecture
- 7API management et API gateways : politiques, rate limiting, plans et portailsCe qu'une API gateway apporte de plus qu'un load balancer ou un mesh, le fonctionnement du rate limiting et des clés d'API, et le choix d'une plateforme.Intermédiaire13 min de lecture
- 8Systèmes réactifs : backpressure, Reactive Streams et Project ReactorCe que « réactif » veut vraiment dire : I/O non bloquantes, backpressure, contrat Reactive Streams, pipelines Reactor, et quand préférer les virtual threads.Avancé10 min de lecture
- 9Performance applicative : latence, percentiles, profilage et la JVMUne méthode fondée sur la mesure pour rendre une application rapide : loi de Little, percentiles, profilage, GC, accès à la base de données et cache.Avancé12 min de lecture
- 10Méthodologie des tests de charge : modèles de charge, types de tests et analyseConcevoir des tests de performance qui prédisent la production : modèle de charge, montée en charge, fidélité de l'environnement, métriques et analyse.Intermédiaire12 min de lecture
- 11Architecture d'entreprise et TOGAF : l'ADM, les domaines et la gouvernanceÀ quoi sert l'architecture d'entreprise, comment le cycle ADM de TOGAF se déroule phase par phase, les quatre domaines, les building blocks et la gouvernance.Intermédiaire12 min de lecture
- 12Transactions distribuées et cohérence : 2PC, sagas, outbox et CAPACID contre BASE, ce que disent vraiment CAP et PACELC, pourquoi le commit à deux phases bloque, et comment fonctionnent sagas, outbox et idempotence.Avancé13 min de lecture
Pour continuer
Spring Boot et Spring CloudConstruire, configurer, documenter, tester et déployer des services prêts pour la production avec Spring Boot, Spring Data, Spring Batch et Spring Cloud.11 guides →Messagerie et streaming d'événementsJMS, ActiveMQ, RabbitMQ et Apache Kafka : brokers de messages, garanties de livraison, patterns de routage et leur utilisation depuis Java.10 guides →Cloud computingFondamentaux du cloud, services clés d'AWS et Azure, conception well-architected, migration, haute disponibilité, applications cloud-native et coûts.8 guides →