The Modern Application Architecture Workshop (MAA)
Learn how to design and build Cloud-Native, flexible, responsive, resilient -self-healing-, elastic & cost effective systems faster than the competition using Reactive Architecture
Agenda
Day One
Introduction
The Business Drivers for Modern Application Architecture
What is Reactive Systems?
Reactive Philosophy , isolation & decoupling (flexibility) , embrace failure
The Workshop Use Case Walk-through
Reactive and Cloud-Native?
Reactive is a perfect fit for Cloud-Native
Reactive Design Patterns
1-Core Design Patterns
Domain Driven Design
Hexagonal Architecture
Microservices
The Actor Model
Discussion and Use Cases
2-Distributed Messaging
Types of message delivery guarantees
Exactly Once
Event Streaming
Edge Computing
Discussion and Use Cases
3-Transactions
Consistency, availability and scalability
Eventual consistency Vs. Strong consistency
Distributed Saga
Discussion and Use Cases
4-Data Management
Isolating and minimizing the impact of resource contention
CQRS/Event Sourcing/Command Sourcing
Discussion and Use Cases
5-High Availability & Failure Recovery
Supervision
Bulk-heading
Circuit Breakers
Discussion and Use Cases
Sharding
Caching & CRDT
Back Pressure
6-Security
Application Security Considerations
Tokens and Sessions
Discussion and Use Cases
7-Service Access Management
Service Locator
Discussion and Use Cases
API Management
API Management
Service Locator
API Gateway
Security and Access Control
Mediation & Transformation
Analytics
Developer Engagement
Workshop
Day Two
Labs
Virtual Machine Setup
Review the project solution design that was created in day One and the utilized design patterns
Environment Walk-through
Introduction to the Actor Model, Akka and the Actor System
Introduction to Kubernetes
Introduction to the Akka Cluster
Introduction to Kafka
Introduction to the Play Framework
Introduction to the Postman API Client
Build the stateful Microservices Cluster Sharding
Connect to Kafka
Connect to the database
Build the Minishift Environment
Build and run the Microservices cluster in the Minishift K8S Environment
Putting it all together
Run the use cases and the testing scenarios
Lab Review
Conclusion, Q&A and next steps