Microservices with Spring Cloud
4.4 (2,276 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
10,191 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Microservices with Spring Cloud to your Wishlist.

Add to Wishlist

Microservices with Spring Cloud

A deep-dive into the Microservice architectural style, and how to implement it with Spring technologies.
Best Seller
4.4 (2,276 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
10,191 students enrolled
Created by Ken Krueger
Last updated 5/2017
Current price: $10 Original price: $35 Discount: 71% off
5 hours left at this price!
30-Day Money-Back Guarantee
  • 4.5 hours on-demand video
  • 9 Articles
  • 1 Supplemental Resource
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Articulate the Microservices architectural style; its advantages and disadvantages
  • Build simple Spring Boot applications utilizing web interfaces, REST interfaces, Spring Data, and HATEOAS
  • Build Microservice applications utilizing the different Spring Cloud sub-projects, including Config Server & Bus, Eureka, Ribbon, Feign, and Hystrix
View Curriculum
  • Knowledge of Java programming
  • Knowledge of latest versions of Spring Framework. Familiarity with concepts such as ApplicationContext, Profiles, RestTemplate, @Value, @Autowired, @Component, Java Configuration, etc.
  • Knowledge of Spring Boot helpful, but will be covered in the course.
  • Basic familiarity with Maven. How to specify dependencies, and how to do a "mvn clean package"
  • A Git account, such as GitHub, will be needed. We will cover this in the course if you don't have one already. Course materials will be downloaded from Git, and you will need to place files in your own Git repository.

Microservices with Spring Cloud is an online workshop designed to help you learn the Microservices architectural style, and how to implement it using Spring technologies

This course provides a good, solid introduction to the topic of the Microservices architectural style, and combines this with practical experience gained by working through the exercises featuring Spring Cloud.

Along the way, this course will provides a brief introduction to Spring Boot and Spring Data (enough to get you familiar with these technologies if you have not been immersed in them already).

The course provides exercises that provide you with hands-on experience working with the various components of Spring Cloud.

The goal of this course is to serve as a practical guide through the Spring Cloud projects, so you can see how they are used to implement microservice based architecture.

By the time you finish this course, you will have gained the ability to articulate what the Microservices architectural style is all about, including its advantages and disadvantages.

You will gain familiarity with Spring Boot, and you'll see how to use it to build web interfaces, REST interfaces, and how to use Spring Data and Spring Data REST.

You will gain the ability to build microservice-based applications utilizing Spring Cloud technologies. You will learn about

  • Centralized, versioned configuration management using Spring Cloud Config
  • Dynamic configuration updates with Spring Cloud Bus
  • Service discovery with Spring Cloud Eureka
  • Client Side Load Balancing with Ribbon
  • Declarative REST Clients with Feign
  • Software Circuit Breakers with Hystrix.
Who is the target audience?
  • Intended for experienced Java software developers comfortable with the latest releases of the Spring framework
  • NOT intended for beginners. However, depending on your technical experience in other technologies, and your learning style, you may find this course a fascinating deep-dive into Microservices, Spring Cloud, and Cloud-Native applications.
Students Who Viewed This Course Also Viewed
Curriculum For This Course
30 Lectures
2 Lectures 06:51

Lab Setup
Introduction to Microservices
2 Lectures 36:17

Provides a description of the meaning of the Microservices architectural style, and begins to demonstrate it by showcasing the characteristics of a monolithic application.

What are Microservices? Part 1

Provides an explanation of the microservices architectural style by contrasting point-by-point with the previously described characteristics of the monolith. Outlines the relative advantages and disadvantages of each style, and provides guidance for applying the microservices style.

What are Microservices? Part 2
Modern Spring: Spring Boot, Spring Data, and Spring Data REST
6 Lectures 01:12:58

Explains the fundamental nature and purpose of Spring Boot, beginning with the very basics.

Preview 16:34

Guided explanation of Spring Boot web applications, WAR deployment, and Thymeleaf templating

Spring Boot, Part 2

Guided explanation of Spring Boot web applications utilizing JSPs, RESTful services, JSON, and XML

Spring Boot, Part 3

Adding Spring Data JPA to a Spring Boot application.

Spring Boot, Part 4

Adding Spring Data REST to a Spring Boot application.

Spring Boot, Part 5

Lab 1 - Create a Spring Boot Application
Spring Cloud
19 Lectures 02:39:56

A brief explanation of the Spring family of projects, where Spring Cloud fits in, and why Netflix technology is featured so much.

Spring Cloud Overview

A justification and explanation of Spring Cloud Config, and a step-by-step guide to creating your own Spring Cloud Server.

Spring Cloud Configuration - Centralized, Versioned Configuration - Part 1

Continued discussion of Spring Cloud Config focusing on the client side, repository organization, YML vs property files, and an explanation of the Spring Cloud application's startup process.

Spring Cloud Configuration - Centralized, Versioned Configuration, Part 2

Lab 3 - Spring Cloud Configuration

An explanation of passive service discovery, how to create a Eureka server, and how to register a Eureka client.

Preview 18:46

Lab 4 - Spring Cloud Eureka

An exploration of server-side and client-side load balancing, and a practical guide to using Ribbon on a client.

Spring Cloud Ribbon - Client-Side Load Balancing

Lab 5 - Spring Cloud Ribbon

A focused exploration of Feign, and how to use it to implement REST clients via a declarative style.

Preview 11:53

Lab 6 - Feign

This module examines the idea of circuit breakers in software, and describes how to use Hystrix with Ribbon and Feign.

Spring Cloud Hystrix - Circuit Breaker

Lab 7 - Hystrix

This module re-visits Spring Cloud Config, and demonstrates how to make changes dynamic using Spring Cloud Bus. It also explores how @RefreshScope and @ConfigurationProperties can be used to make an application resilient to live refresh.

Spring Cloud Bus - Dynamic Configuration Changes

Lab 8 - Spring Cloud Bus

API Gateway - Part 1 - Purpose, and Spring Cloud Zuul

API Gateway - Part 2 - Caching Options

API Gateway - Part 3 - Resource Expansion

API Gateway - Part 4 - Protocol Conversion

Lab 9 - Zuul and ETags
Wrap-Up, Final Thoughts, and Next Steps
1 Lecture 05:02

Summary of what we've learned in this course, guide to further resources.

Summary, Resources, and Feedback
About the Instructor
Ken Krueger
4.4 Average rating
2,267 Reviews
10,191 Students
1 Course
Technical Instructor in Software Development topics

Over 25 years of experience developing software for a variety of business purposes. Expertise in Java, Spring, and related open source technologies, database and web development, cloud, microservices, and big data. Experience as a software developer, team leader, project manager, and scrum master.

My Professional Mission: Guiding individuals and organizations to commercial success through the application of modern technology.