YoVDO

Developing Event-Driven Microservices with Event Sourcing and CQRS - Philly ETE 2015

Offered By: ChariotSolutions via YouTube

Tags

Microservices Courses Distributed Systems Courses NoSQL Databases Courses Asynchronous Programming Courses Cloud-Native Applications Courses CQRS Courses Event-Driven Architecture Courses Domain-driven Design Courses

Course Description

Overview

Explore event-driven microservices architecture, event sourcing, and Command Query Responsibility Separation (CQRS) in this 56-minute conference talk from Philly ETE 2015. Dive into the challenges of modern, cloud-native applications using microservices and distributed databases. Learn how to maintain consistency across multiple databases without two-phase commit (2PC) by implementing an event-driven architecture. Discover the benefits and drawbacks of event sourcing, including its ability to recreate application state and optimize performance through snapshots. Examine strategic design principles for identifying subdomains and defining microservices, as well as inter-service communication mechanisms. Gain insights into designing domain events, the anatomy of a microservice, and implementing asynchronous controllers with Spring MVC. Explore CQRS and its application in query-side microservices, providing a comprehensive approach to building scalable, modern applications.

Syllabus

Intro
Traditional application architecture
Obstacle to frequent deployments
Overloads your IDE and container
Obstacle to scaling development
Requires long-term commitment to a technology stack
Limitations of a single relational database
Apply the scale cube
Use a microservice architecture
Use NoSQL databases
Different modules use different types of databases
Update two entities in a NoSQL database
Cassandra main table index table
Event-based architecture to the rescue
Eventually consistent money transfer transfer Money
Update and publish using 2PC
Use data store as message queue
Persists events NOT current state
Replay events to recreate state
Event store implementations
Optimizing using snapshots
Aggregate traits
Account - command processing
Aggregate type classes/implicits
Business benefits of event
Technical benefits of event
Drawbacks of event sourcing
Strategic design: identify sub- domains
Strategic design: define microservices
Decide inter-service communication mechanisms
Use the familiar building blocks of DDD
Designing domain events
The anatomy of a microservice
Asynchronous Spring MVC controller
Handling events published by Accounts
Command Query Responsibility Segregation (CQRS)
Query-side microservices
Benefits and drawbacks of
Summary


Taught by

ChariotSolutions

Related Courses

Complete guide to building an app with .Net Core and React
Udemy
The complete NestJS developer. Enterprise Node.js framework
Udemy
CQRS in Practice
Pluralsight
Modern Software Architecture: Domain Models, CQRS, and Event Sourcing
Pluralsight
Event-Driven Microservices, CQRS, SAGA, Axon, Spring Boot
Udemy