In this tutorial we will understand the microservices architecture and implement the same with Spring Cloud.we will understand and implement the below concepts.
Lets take a quick look into the terminologies on a higher level :
Feign – declarative REST client
Ribbon – client side load balancer
Eureka – service registration and discovery
Zuul Gateway – gateway service that provides dynamic routing, monitoring, resiliency, security, and more
Sleuth – distributed tracing via logs
Zipkin – distributed tracing system with request visualization.
Below are the post which will go through the step by step implementation of microsevices with spring cloud.
Part 1 - Microservices Introduction
In this tutorial we will understand below topics
- What is Monolithic Architecture?
- Drawbacks of Monolithic Architecture
- What is Microservices Architecture?
- Monolithic vs Microservices Architecture
PART 1 - MICROSERVICES WITH SPRING CLOUD : MICROSERVICES INTRODUCTION
Part 2 – Scenario To Develop
In this tutorial we will understand below topics
- Scenario to develop in microservice architecture
- Create rest end points
PART 2 – MICROSERVICES WITH SPRING CLOUD : SCENARIO TO DEVELOP
Part 3 - Feign Client
In this tutorial we will understand below topics
- What is Feign Client?
- How microservices interact with each other?
- How to use Feign Client in microservices?
PART 3 - MICROSERVICES WITH SPRING CLOUD : FEIGN CLIENT
Part 4 - Ribbon Client
In this tutorial we will understand below topics
- What is Ribbon Client?
- What is client side load balancing?
- How to implement ribbon in microservices?
PART 4 - MICROSERVICES WITH SPRING CLOUD : RIBBON CLIENT
Part 5 - Eureka Naming Server
In this tutorial we will understand below topics
- What is Eureka Naming Server?
- Advantages of eureka naming server
- How to implement eureka naming server in microservices?
PART 5 - MICROSERVICES WITH SPRING CLOUD : EUREKA NAMING SERVER
Part 6 - Zuul Gateway
- In this tutorial we will understand below topics
- What is Zuul?
- What is the need of Zuul Gateway?
- How to implement the Zuul Gateway in microservices?
PART 6 - MICROSERVICES WITH SPRING CLOUD : ZUUL GATEWAY
Part 7 - Distributed Tracing With Spring Cloud Sleuth
In this tutorial we will understand below topics
- What is Spring Cloud Sleuth?
- What is distributed tracing solution?
- How to implement the Spring Cloud Sleuth in microservices?
PART 7 - MICROSERVICES WITH SPRING CLOUD : DISTRIBUTED TRACING WITH SPRING CLOUD SLEUTH
Part 8 - Distributed Tracing With Spring Cloud Sleuth & Zipkin
- In this tutorial we will understand below topics
- What is Zipkin?
- How to log the distributed logs at one place in microservices?
- Setup Zipkin Server
- Setting up RabbitMQ
- How to implement the Zipkin in microservices?
PART 8 - MICROSERVICES WITH SPRING CLOUD : DISTRIBUTED TRACING WITH SPRING CLOUD SLEUTH & ZIPKIN
Part 9 - Fault Tolerance With Hystrix
In this tutorial we will understand below topics
- What is Hystrix?
- How to handle fault tolerance in microservices?
- How to implement the Hystrix in microservices?
PART 9 - MICROSERVICES WITH SPRING CLOUD : FAULT TOLERANCE WITH HYSTRIX
Source Code Download source code of microservice with spring cloud from below git repository : microservices-with-spring-cloud