When you enroll through our links, we may earn a small commission—at no extra cost to you. This helps keep our platform free and inspires us to add more value.

Udemy logo

Spring Boot Microservices with Spring Cloud Beginner to Guru

Learn to Master Spring Boot Microservices with Spring Cloud and Docker

     
  • 4.2
  •  |
  • Reviews ( 5.6K )
₹659

This Course Includes

  • iconudemy
  • icon4.2 (5.6K reviews )
  • icon42h 31m
  • iconenglish
  • iconOnline - Self Paced
  • iconprofessional certificate
  • iconUdemy

About Spring Boot Microservices with Spring Cloud Beginner to Guru

Microservices

are all the buzz in the industry right now. Building a microservice is not just a matter of using RESTFul APIs. Microservices are much MUCH more than that. In this course you will learn that Microservices are an architectural style. The allow companies to achieve massive scale while maintaining a high degree of flexibility. This course goes beyond simple RESTful APIs and explores microservices as an architectural style.

What Students are Saying about the Course

5 STARS

Great course

, you can be sure about it. If you're fairly new to the java world and spring framework, I highly suggest to follow Spring Framework from beginner to guru (the teacher is always John). In my experience I can tell you that after the first course, I managed to

progress in my career twice

, with praises of my colleagues and managers. The content of both courses is very well explained and easy to learn. _If you want to stand out, definitely this course worth the money._

5 STARS

Very good course on microservices with Spring! It gave me a good starting point for the upcoming task at my work! 5

all the way for John!

5 STARS

I like this course a lot! It's exactly what I needed after some experience with Spring Boot, to go to the next level. A lot of applications are presented, giving the opportunity to exercise what you've learned. The assignments are also very welcomed.

5 STARS

Very VERY good content, well structured approach and clear explanations. Very enjoyable and educative. I'm even picking up a few techniques / frameworks I hadn't really used before.

About the Course

Traditionally, large enterprise class applications were developed as large monolithic applications. The Spring Framework started as an alternative to J2EE (now JEE) for building these large monolithic enterprise applications. As the industry evolved to favor microservices over monoliths, the Spring Framework and Spring Boot evolved also. The Spring Framework gives you a battle-tested enterprise grade framework for building applications. Spring Boot and Spring Cloud are tools specifically for the development of microservices using the Spring Framework. Microservices present a unique set of challenges over monoliths. Spring Boot and Spring Cloud help you overcome these changes.

What are these challenges that microservices have, which traditional monoliths do not?

Is it okay for microservices to share databases?

How do you coordinate business logic across a series of microservices?

How do you manage transactions across serval microservices with different databases? To explain these questions, in this course you get to explore a traditional Spring Boot monolith type of application. (Along the style of Spring Pet Clinic). We will then re-create this monolithic application using a set of microservices. You get to see, step by step how to build 3 different microservices. Microservices are much more than just having a set of RESTFul APIs. Microservices frequently use asynchronous messaging systems, which is fully covered. While the Spring Framework and Spring Boot are the tools you use to construct Microservices, Spring Cloud provides the tools to deploy microservices. You get to see the latest tools in Spring Cloud for deploying Spring Boot Microservices into a distributed (or cloud) environment. In 2018, Netflix announced several core projects to Spring Cloud were entering maintenance mode. Meaning no new development would be done on these projects. Thus, in

December of 2018

, the Spring Cloud Team recommended several key replacements:

Previous

Replacement

Hystrix --> Resliience4J Ribbon --> Spring Cloud Load Balancer Zuul 1 --> Spring Cloud Gateway Archaius 1 --> Spring Cloud Config _Therefore, the recommend replacements are covered in this course._

Covered in this Course

In this course you will learn:

Develop RESTful Services using

Spring MV

C

Consume RESTFul Services with

Spring RestTemplate

How to use

Project Lombok

How to use

MapStruct

Spring Data JPA

with

Hibernate

Configuration of Spring Boot for

MySQL

and

H2

How to use and configure

Jackson

for processing JSON with Spring Boot

Data validation with Spring Boot and

Hibernate Validator

Documentation and testing of Spring Boot microservices using

Spring RESTdocs

Standardizing dependencies using

Apache Maven

Spring Application Events

Using JMS Messaging using

Apache ActiveMQ Artemis

The microservice

Saga Pattern

How to use

Spring State Machine

for coordinating Sagas

Integration Testing using Spring Boot and

JUnit 5

Using

WireMock

with

JUnit 5

How to use

Awaitily

in your Integration Tests

The API Gateway pattern using

Spring Cloud Gateway

Load Balanced Routes using

Netflix Ribbon / Spring Cloud Loadbalancer

Service Registration using

Netflix Eureka

Service Discovery with

Netflix Eureka

Service Discovery using

Spring Cloud OpenFeign

Circuit Breaker Pattern using

Reslience4J

and

Hystrix

/

Spring Cloud OpenFeign

Manage configuration with

Spring Cloud Config

Distributed tracing with

Spring Cloud Sleuth

and

Zipkin

Securing

Spring Cloud

with

Spring Security

Use

Docker

to create images for your Spring Boot applications

Push your Docker Images to

Docker Hub

Configure

Logback

with

Logstash

for JSON logging output

Using

Docker Compose

to start and stop your microservices

Use ELK stack (

Elasticsearch

,

Logstash

,

Kibana

) for consolidated Logging

Provision virtual machines in the cloud for

Eureka

,

Apache ActiveMQ Artemis

,

Spring Cloud Config

,

Zipkin

,

Elasticsearch

, and

Kibana

.

Provision

MySQL

databases using Digital Ocean.

Create

Docker

Droplets (aka Virtual Machines) in Digital Ocean

Deploy

Spring Cloud Config i

n the the cloud with

Eureka

Create a

Docker Swarm

Cluster for Spring Boot Microservices And much much more!

Inside the Course

Links all source code examples (Dozens of GitHub repositories are used for this course!)

Challenging Assignments

All slides are downloadable as PDFs for your reference and study

Course Extra - IntelliJ IDEA Ultimate

Students enrolling in the course can receive a

free 4 month trial license

to IntelliJ IDEA Ultimate! Get hands on experience using the Java IDE preferred by Spring Framework professionals!

Course Extra - Access to a Private Slack Community

You're not just enrolling in a course --> _You are joining a community learning Spring._ With your enrollment to the course, you can access an exclusive Slack community. Get help from the instructor and other Spring Framework Gurus from around the world - in real time! _This community is only available to students enrolled in this course._ This is a very

active

Slack community _with hundreds Spring Framework Gurus from around the world!_ When you enroll in this course, you can join this

community

of awesome gurus!

What You Will Learn?

  • Learn how to develop Microservices with Spring Boot .
  • Learn how to deploy and manage Spring Boot Microservices with Spring Cloud .
  • How to deconstruct a monolith into Spring Boot Microservices .
  • Best Practices for Developing RESTFul APIs with Spring MVC .
  • How to consume RESTFul APIs using Spring RestTemplate .
  • Using Java Bean Validation with Spring Boot .
  • How to use Project Lombok and MapStruct to reduce boiler plate code .
  • Generate API documentation with Spring REST Doc .
  • Configure Jackson for JSON processing with Spring Boot .
  • Use JMS for messaging between Spring Boot Microservices .
  • Use Spring State Machine to Apply the Saga Pattern with Microservices Show moreShow less.