GithubHelp home page GithubHelp logo

meta-magic / microservice_workshop Goto Github PK

View Code? Open in Web Editor NEW
72.0 13.0 61.0 51.4 MB

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.

Home Page: http://www.metaarivu.com

Shell 0.15% Java 59.54% HTML 5.31% JavaScript 0.29% TypeScript 5.92% CSS 28.78%
microservice cqrs kafka service-mesh distributed-transactions spring-cloud microservices-architecture-styles scalability ddd event-sourcing-and-cqrs

microservice_workshop's Introduction

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

MetaArivu : 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

Training Presentations (Theory)

Contact for Corporate Training

MetaArivu : Eco System Evangelist. mailto:[email protected]

License

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

Licensed under the Apache 2.0 License.

Enjoy!

microservice_workshop's People

Contributors

arafkarsh avatar ashujadhav123 avatar ashwiniagre1 avatar ketan-gote avatar rashmithakkar avatar sagarthecook avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.