I. Architecture Design.
II. Services
- Naming Server - This is a Eureka Service
- Api Gateway - This is a Zuul Service
- Auth Service - This is a Spring Boot Web service
- Currency Exchange Service - This is a Spring Boot Web service
- Currency Conversion Service - This is a Spring Boot Web service
III. How to run
Run the Naming Server, Api Gateway, Auth Service, Currency Exchange, Currency Conversion Service in order.
- Naming Server http://localhost:8761/
- Api Gateway: http://localhost:8765/
- Auth Service: http://localhost:9100/
- Currency Exchange Service: http://localhost:8000/
- Currecy Conversion Service: http://localhost:8100/
Run Auth Service to get th JWT token Run Currency Exchange Service Standalone Run Currency Exchange via Api Gateway using JWT token from Auth Service Run Currency Conversion Service via API Gateway using JWT token from Auth Service
REFERENCES
- https://www.udemy.com/course/microservices-with-spring-boot-and-spring-cloud/
- https://medium.com/omarelgabrys-blog/microservices-with-spring-boot-intro-to-microservices-part-1-c0d24cd422c3
- https://stackoverflow.com/questions/36359915/authorization-header-not-passed-by-zuulproxy-starting-with-brixton-rc1
- https://medium.com/@IlyasKeser/feignclient-interceptor-for-bearer-token-oauth-f45997673a1
- https://www.baeldung.com/spring-mvc-handlerinterceptor
- https://spring.io/guides/topicals/spring-security-architecture/