Microservice Workshop Save

Microservices Architecture Workshop focuses on helping the developers / architects to understand the key Architecture paradigms with hands on section. The course helps the developers from Monolithic App mindset to a Microservices based App development. It also helps the developers with hands on development experience with key Microservices infrastructure technologies like Eureka, Ribbon, Zuul, Kafka etc., and key Architecture styles likes Domain Driven Design, Event Sourcing and CQRS, Functional Reactive Programming, Microservice messaging.

Project README

Microservices Architecture 2+1 Day Training Program

Karsh& Ketan

Executive Summary

Microservices Architecture Workshop focuses on helping the developers / architects to understand the key Architecture paradigms with hands on section. The course helps the developers from Monolithic App mindset to a Microservices based App development. It also helps the developers with hands on development experience with key Microservices infrastructure technologies like Eureka, Ribbon, Zuul, Kafka etc., and key Architecture styles likes Domain Driven Design, Event Sourcing and CQRS, Functional Reactive Programming, Microservice messaging.

Microservice Characteristics

Schedule

Schedule

Contact for Corporate Training

<B>MetaArivu </B>: Eco System Evangelist. mailto:[email protected]

Target Audience

  • Developers / Sr. Developers
  • Architects / Sr. Architects
  • Business Analysts
  • Engineering Directors / CIO

Course Content

  1. Microservices Architecture Styles
  2. Scalability
  3. Design Styles
  4. Design: Event Storming
  5. Distributed Transaction Management
  6. Transactions: Case Studies
  7. Messaging: Service Mesh
  8. Messaging: Apache Kafka
  9. Security
  10. Hands on Workshop – Architecture
  11. Hands on Workshop – Deployment
  12. Hands on Workshop – Case Study

Objectives

  1. Understand the Microservices Architecture concepts
  2. Understand Event Sourcing and CQRS
  3. Understanding Domain Driven Design
  4. Understanding Functional Reactive Programming
  5. Understanding Distributed Transaction Management
  6. Understanding Microservices Messaging
  7. Setting up Micro services Infrastructure (API Gateway, Service Discovery, Load Balancer, Circuit Breaker)

Pre-requisites for Developers / Architects

  • Java Programming Language
  • Design Patterns

Course Content Details

Microservices Architecture Styles

  1. Pros and Cons
  2. Micro Services Characteristics
  3. Monolithic Vs. Micro Services Architecture
  4. SOA Vs. Micro Services Architecture
  5. App Scalability Based on Micro Services
  6. Hexagonal Architecture
Microservices Architecture Vs Monolithic Apps
Microservices Architecture Vs SOA

Scalability

  1. CAP Theorem
  2. Distributed Transactions: 2 Phase Commit
  3. SAGA Design Pattern
  4. Scalability Lessons from EBay
  5. Design Patterns

Design Styles

Domain Driven Design

  1. Understanding Requirement Analysis
  2. Bounded Context
  3. Context Map
  4. Aggregate Root

Event Sourcing & CQRS

  1. CRUD
  2. ES and CQRS
  3. Event Sourcing Example

Functional Reactive Programming

  1. Building Blocks of RxJava
  2. Observable and Observer Design Pattern
  3. Comparison: Iterable / Streams / Observable
  4. Design Patterns: Let it Crash / SAGA

Design: Event Storming

  1. Event Sourcing Intro
  2. Domain and Integration Events
  3. Event Sourcing & CQRS Implementations
  4. Mind Shift
  5. Event Storming
  6. Event Storming Restaurant Example
  7. Event Storming Process map – Concept
  8. ESP Example

Distributed Transaction Management

  1. SAGA Design Pattern
  2. SAGA Features
  3. Local SAGA Features
  4. SAGA Execution Container (SEC)
  5. Let-it-Crash Design Pattern

Transaction Case Studies

  1. Handling Invariants
  2. Use Case : Travel Booking – SEC
  3. Use Case : Travel Booking – Rollback
  4. Use Case : Restaurant – Forward Recovery
  5. Use Case : Shopping Site – ES / CQRS
  6. Use Case : Movie Streaming – ES / CQRS 


Messaging: Service Mesh

  1. Eight fallacies of Distributed Computing
  2. Service Mesh
  3. Sidecar Design Pattern
  4. Service Mesh – Sidecar Design Pattern
  5. Service Mesh – Per Host Design Pattern
  6. Service Mesh Software Features
  7. Service Mesh – Traffic Control
  8. Service Mesh Open Source Infrastructures

Messaging: Apache Kafka

  1. Kafka Features
  2. Kafka Topic & Durability
  3. Kafka Data Structure
  4. Kafka Performance
  5. Kafka Case Study

Security

  1. Understanding JSON Web Token
  2. Anatomy of JSON Web Token
  3. Benefits of JSON Web Token

Hands on Workshop – Microservices Architecture

  1. Domain Driven Design
  2. Event Sourcing and CQRS (Using Axon Framework)
  3. Microservice Messaging using Kafka
  4. Functional Reactive Programming
  5. Security of REST Services (using JWT – JSON Web Token)
  6. Declarative REST Clients (Spring)

Hands on Workshop – Microservices Deployment Architecture

  1. Microservices Cloud Configuration (Spring Cloud)
  2. Microservice Service Discovery (Spring Cloud Eureka)
  3. Microservice Load Balancing (Spring Cloud Ribbon)
  4. Microservice Circuit Breaker (Spring Cloud Hysterix)
  5. Microservice API Gateway (Spring Cloud Zuul)

Hands on Workshop – Case Study: Ecommerce Site

Following Microservices are built based on

  • Spring Boot with design examples on
  • Domain Driven Design,
  • Event Sourcing and CQRS,
  • Circuit Breaker Design Pattern
  • Asynchronous messaging using Kafka.
Microservices Case Study: Shopping Site

All the source code and detailed course materials for the above mentioned Microservices will be shared after the workshop.

Infrastructure Requirement

  • Linux Workstation (Ubuntu)
  • Java - http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
  • Eclipse / Maven - https://maven.apache.org/install.html
  • Spring Tool Suite - https://spring.io/tools/sts/all
  • Kafka / PostgreSQL / Netflix (Ribbon, Hystrix, Eureka, Zuul) / Rx Java v2.0
  • Spring Boot / Docker Containers
  • NPM/Node - https://nodejs.org/en/
  • Angular CLI - https://cli.angular.io
  • Hardware – 16 GB RAM (Preferred) & 256 GB HDD, Intel i5 or i7 CPU
  • Internet Connection

Training Presentations (Theory)

Contact for Corporate Training

<B>MetaArivu </B>: Eco System Evangelist. mailto:[email protected]

License

Copyright © MetaMagic Global Inc, 2017-18. All rights reserved.

Licensed under the Apache 2.0 License.

Enjoy!

Open Source Agenda is not affiliated with "Microservice Workshop" Project. README Source: meta-magic/microservice_workshop

Open Source Agenda Badge

Open Source Agenda Rating