Réalisé par: Marwane BERIICH
Encadré par: Professeur Mohamed YOUSSFI
L’objectif est de créer un système distribué basé sur les micro-services permettant de gérer les factures des clients en utilisant la même architecture que vous avez déjà développé auparavant en y intégrant un système de sécurité basé sur Keycloak, Un Bus de messagerie avec KAFKA, un service de Stream processing avec Kafka Streams et un service de Batch Processing avec Spring Batch.
Pour construire ce projet on va suivre l'architecture des MicroServices suivant:
- Customer-Service
- Inventory-Service
- Billing-Service
- Eureka Discovery Service
- Spring Cloud Gateway
Chaqu'un de ces Microservices a sa propre base de données. Et par la suite en va voir en details les structure de chaque microservice:
1. Customer-Service
2. Inventory-Service
3. Billing-Service
4. Eureka Discovery Service
5. Spring Cloud Gateway
Pour garantie le bon fonctionnement des API qu'on a developer, on a utiliser Insomnia, une outil de RESTClient :
A-1. GET Bills
A-2. GET Customers
A-3. GET Products
B-1. POST Bills
B-2. POST Customers
B-3. POST Products
Pour cet partie on va voir l'implimentation du Frontend utilison la technologie REACT.js
avec Tailwind CSS
.
Et par la suite on va voir les parties réaliser :
1. Produits
2. Clients
3-a. Factures
3-b. Détail de facture
Mon prochain objectif est d'intégrer KAFKA dans un nouveau MicroService qui va générer des factures du maniere aléatoire. Et d'ajouter ce MicroService dans mon systéme complet.
Ainsi que d'ajouter des couches de sécurité au Frontend
et Backend
utilisons Keycloak, j'ai déja commencer de l'integrer mais je rencontre des problèmes dans la partie du Bearer-Only.
Je tiens de merci Mr. Youssfi pour cet formation qui m'a motivé de continuer mes autoformations dans ce sense là, et de réaliser plus des projets.
MS Gateway
https://github.com/marwaneber/ms-gateway
MS Customer Service
https://github.com/marwaneber/ms-customer-service
MS Billing Service
https://github.com/marwaneber/ms-billing-service
MS Eureka Discovery
https://github.com/marwaneber/ms-eureka-discovery
MS Inventory Service
https://github.com/marwaneber/ms-inventory-service
MB Dashboard