Building Event-Driven Microservices with Event Sourcing and CQRS - Lidan Hifi

preview_player
Показать описание
Most systems today store only the current state of their business entities.
However, you can look at the current state through a different lens, as a derivative of previous behaviors. Storing past behaviors as a sequence of events, instead of the current state of the entity, will gain you accurate audit logging, history revisions, flexible schemas and more. The current state is derived by replaying the events.
Event Sourcing is a great way to implement event-driven applications, and it’s often combined with CQRS (Command Query Responsibility Segregation) which is a key part of an architecture that is based on event sourcing.

In this talk, Lidan will cover the principles of Event Sourcing pattern, how to model your data accordingly and how you can improve your system by segregating reads and writes using specialized read models.
You’ll learn how these concepts fit in with event-driven microservices through a real-life example - an invoice management app we built at Wix.

NDC Conferences
Рекомендации по теме
Комментарии
Автор

This is probably one of the best talks on event sourcing that I've ever seen. It tackles even the stuff that aren't even touched upon on other ES+CQRS talks!
Really great talk! I learned a lot!

aaaarvil
Автор

Eventsourcing and CQRS is also a source of accidential complexity. Suddenly you need to have a separate read model and write model. Instead of a database transaction you now have a distributed transaction which needs a process manager (saga). You introduce dependencies on a message bus and possibly also on a message scheduler.
And you introduce eventual consistency which you need to consider when applying commamds and querying.

jakobstengard
Автор

This is a must watch for anyone starting with event sourcing and CQRS pattern for microservices... kind of saved my a** in an interview discussion as well 🙌🙌

priyankthakkar
Автор

Somebody seems to have watched as much Greg Young as I have. It's nice seeing these ideas as applied by someone working in web rather than more enterprise business software though.

whiskeytuesday
Автор

Anyone know any practical code sample for event sourcing, its seem to me that all videos for event sourcing and CQRS is conceptual rather than practical, even Greg Young videos

kwangee
Автор

Really great explanation. Learned a lot from this.

smbehindyou
Автор

Thank you Lidan. what kind of data base options are available for storing all the events?

praskatti
Автор

Sounds great on paper. But I can think of some cases where this will become a nightmare. 1. How do you build complex views that might involve changing business requirements? Do you have to replay all the events from the beginning of time? 2. How do you maintain business rules versioning? I assume events and event sequences will change when business rules changes. How do you replay the events with the correct version of business rules? 3. How do you coordinate transactions when all the events are async?

Laggie
Автор

Yet another, introduction into boxes, arrows and other powerpoint shapes.

chrise
Автор

Cannot fully agree that consistency model is a business concern. In some cases it definitely is - how to reach consensus or convergence when multiple users send concurrent commands? In other cases, it's a technical problem - business always wants strong consistency, but we have to sacrifice by relaxing guarantees to get better performance/availability.

tyrotoxin
Автор

Great presentation! I learned many things, thank you!

joaopedros.h.
Автор

Can we also get the practical examples?

prateekashtikar
Автор

Regarding locking, why not to just use kafka with custom partitioner per each aggregate ?

blonditbg
Автор

*loud tongue smack" this was very helpful, thank you for the clear and thorough presentation!

MindCBase
Автор

Can you please share some sample application code

coolmeu
Автор

Can you please upload a sample application preferably in asp.net core covering these concepts. That would be great

akshayshah
Автор

Good quality introduction talk for devs new to event sourcing. The speaker clearing his throat constantly is very distracting unfortunately.

velvetsound
Автор

everything can be event sourced. it's basic accounting. if you fail, it's a skill issue lmao

JohnMcclaned
Автор

Martin Dorothy Johnson Paul Lopez Donna

DorisCorey-ji
Автор

Too high level - that's plus and minus too. Good for understanding the principle but do not show real ways of pitfalls.

LonliLokli