Java Microservices

Java Microservices

This course covers the topic of developing microservices in Java. It starts from architectural principals of splitting an

application into microservices, then discusses the communication of microservices via different protocols, as well

covering various data management approaches in distributed applications. Finally, it touches on deployment with

Docker and Kubernetes, using Service Mesh as an example of Istio.

Продолжительность
30 часы
Тип курсу
Онлайн
Мова
Англійська
Продолжительность
30 часы
Місцезнаходження
Онлайн
Мова
Англійська
Код
JVA-079
Тренінг для 7-8 чи більше людей? Налаштуйте тренінги для ваших конкретних потреб
Java Microservices
Продолжительность
30 часы
Місцезнаходження
Online
Мова
English
Код
JVA-079
€ 750 *
Тренінг для 7-8 чи більше людей? Налаштуйте тренінги для ваших конкретних потреб

опис

This comprehensive course provides a deep dive into microservice architecture development using Java, starting with core principles and characteristics of microservices. We cover vital aspects such as splitting an application into microservices, modeling and communication, exploring decomposition strategies, synchronous / asynchronous communication methods including REST, gRPC and messaging with Kafka.


The course also delves into data management complexities, addressing different persistence strategies, distributed

database principles, and transaction management. It includes hands-on sessions on deployment, focusing on Docker

and Kubernetes, plus exploring Service Mesh using Istio. By the end of the course, learners will have gained thorough

expertise in developing, managing, and scaling microservices effectively. This course covers the topic of developing microservices in Java. It starts from architectural principals of splitting an

application into microservices, then discusses the communication of microservices via different protocols, as well

covering various data management approaches in distributed applications. Finally, it touches on deployment with

Docker and Kubernetes, using Service Mesh as an example of Istio.

сертифікат
Після проходження курсу видається сертифікат
на бланку Luxoft Training

Цілі

To introduce listeners to modern approaches to building microservices. 

Цільова аудиторія

Java

Developers

&

Architects

передумови

Good knowledge of Java & Spring. 

Дорожня карта

Module 1: Microservices in a Nutshell

  • Definition
  • Key Solvable Problems
  • Interaction
  • Granularity
  • Key Defining Characteristics
  • Trade-Offs



Module 2: Modeling Microservices

  • Key Decomposition Strategies
    • Decompose by Object -Oriented Design (OOD)
    • Decompose by Business Capability
    • Decompose by Subdomain (DDD)
  • Selecting a Component Architecture
  • Selecting a Framework

Module 3: Microservice s communication

  • Synchronous communication
  • REST with RestTemplate
  • REST with WebClient
  • REST with Feign
  • gRPC
  • Asynchronous communication
  • Asynchronous vs. synchronous communication
  • Messaging with Spring Cloud Stream
  • Using Kafka for messaging



Module 4: Data Management

  • Persistence Strategies
  • Shared Database
  • Database per Service
  • Alternatives Ways
  • Private-table-per-service
  • Schema-per-service
  • ACID
  • CAP Theorem
  • Eventual consistency
  • Distributed Transactions - 2PC
  • SAGA
  • Event Sourcing
  • CQRS


Module 5: Deployment

  • Key Principles
  • Containerization with Docker
  • Container Orchestration with Kubernetes
  • Database Deployment
  • Deployment Infrastructure Automation

Module 6: Service Mesh

  • What is Service Mesh?
  • Istio
  • Sidecar Proxy
  • Istio Installation Options
  • Istio Main Components: VirtualService and DestinationRule
  • Istio Gateway
  • Request routing
  • Retries
  • Circuit Breaker
  • Rate Limiter
  • Fault Injection
  • Deployment Strategies
  • Visualizing Istio Metrics



Залишилися запитання?
Зв'яжітьсяз нами