Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Microservice Pattern & Architecture (Java Spring Cloud/Boot)
Rating: 4.3 out of 5(170 ratings)
1,667 students

Microservice Pattern & Architecture (Java Spring Cloud/Boot)

Microservice architecture & patterns for many use cases. With full code examples using Java Spring Boot & Spring Cloud
Created byTimotius P
Last updated 11/2024
English

What you'll learn

  • Microservice architecture & patterns that can be used to design good microservice-based application
  • Identify technical challenges & common pitfalls when designing microservice application, and how to handle them using proven patterns
  • Example code on Spring Boot & Spring Cloud with various technologies : Apache Kafka, Consul, API Gateway, Hashicorp Vault, Circuit Breaker
  • Deploy & monitor your microservice application using various technologies : Docker, Zipkin, Elasticsearch, Kibana, Logstash, Exception Tracking Service

Course content

17 sections72 lectures8h 25m total length
  • Welcome2:11
  • Course Structure2:32
  • Tips : How To Get Maximum Value From This Course5:56

Requirements

  • The focus is NOT on coding course. We will see full, detail code & explanation, but not line-by-line hands-on.
  • This course has theory & code part, if you're not interested in code part, no requirement needed.
  • You must know Java Spring programming if you want to fully understand sample code. This course will NOT teach basic Java Spring programming
  • If you want to run sample code, you need a computer with enough memory (at least 8 GB, ideally 16 GB)
  • For convenience, use Linux, Mac, or Windows 10 Professional edition. Older Windows version, or Windows 10 Home should possible runs docker too using Docker Toolbox.

Description

Before you purchase:

  • The course will be focused on architecture & microservice patterns, not how to hand-code the application.

  • You will get full source code (downloadble). I will explain the code & algorithm, but we will not learn how to code line-by-line.

  • To get full understanding of sample code, you must know how to code with Java Spring.

  • Basic spring programming with REST API is NOT covered in this course.

  • If you need to know the concept, you don't need to know Spring programming

-------------------------------------------------------------------------------------------------------------------------------------------


Microservice architecture has become general choice for modern application development. It solves certain problems, although it is not a solution for ecerything.

When using microservice, complexity shifts, and mindset change required. Technical challenges will arise and must be addressed. Fortunately, many people already facing the same technical challenges and developed a solution. These solutions become common patterns to solve thes problems. Thus, it become design patterns for microservices architecture.


There are many patterns to design and implement microservices.

Microservices is -by nature- distributed system, thus some technical challenges comes from this nature. Communication among services in distributed places require different approach to works efficiently. In this course, we will learn many things :


  1. what is microservice architecture

  2. microservice chassis to boost productivity

  3. organize clean & standard microservice code

  4. communication among services : synchronous, asynchronous

  5. service discovery

  6. handling communication error

  7. synchronize data & keeping data integrity on transaction which involves several distributed services

  8. capture changed data in real time, in reliable way

  9. querying data from multiple services

  10. event sourcing, replaying data flow

  11. API gateway concept

  12. composing several API

  13. cache

  14. monitoring services

  15. tracing call chain that involves several services

  16. centralized log & exception tracking

  17. deploy the application as docker container


This course will be delivered with full sample code using Java Spring Boot & Spring Cloud.

Several other tools that we will use on this course :

  • Apache Kafka (will use a lot of this!)

  • MySQL

  • Debezium

  • Docker

  • Hashicorp Consul

  • Hashicorp Vault

  • Elasticsearch

  • Logstash

  • Kibana

  • Zipkin

  • Kong API management


Important!

This course uses Spring Boot version 2.x.

On late November 2022, Spring Boot 3.0.0 released. It takes time for updating the course to Spring boot 3.0.0, but I will do my best.

In the meantime, you have several options:

  • works with latest version of Spring boot 2.x, and the course should full compatible

  • works with Spring boot 3.x. Most of the courses should works, but some parts might need adjustment.

Who this course is for:

  • Software Engineers who want to learn what is microservice architecture, and how to solve common technical problems as well as avoid pitfalls
  • Technical Manager / Architect that needs to design microservice implementation strategy