A Beginner's Guide to Event-Driven Architecture

preview_player
Показать описание
In this gentle introduction to Event-Driven Architecture, we will explore real-world use cases and main concepts such as Event Notification, CQRS, Event Sourcing, etc. We'll discuss common technologies and patterns, such as Messaging with RabbitMQ and Streaming with Kafka.

📚 Resources:

🕒 Timestamps:
0:00 Overview
4:57 Use cases
7:24 Event Notification pattern
17:49 Event-Carried State Transfer
22:32 Event Sourcing
27:44 CQRS

And don't forget to subscribe for more videos like this 😊
Рекомендации по теме
Комментарии
Автор

This is the first time I learned about the basic of Event driven and Event sourcing

whoami
Автор

love the content... well explained and straight to the point!

hexomega
Автор

Hey, love this content. Please keep it up!

jackfilleyreviews
Автор

Thanks for the video. This is all theory but pls implement it

abhilashkr
Автор

Awesome video. Your content is teaching me a ton, and it all makes sense when I listen to your content over some others here on YT.

I did have a question

In the payment processing example, when the client is making the request to make an order, if the payment service succeeds and therefore the order service can update the orders for the user, wouldn't the user simply be moved on to the success screen irregardless of what happens down stream (inventory service update, email service etc.) ? 

I would assume from the clients perspective, they should not be at the mercy of the rest of the systems processing and should only care about if the payment was processed and their money was taken out or not.

TannerBarcelos
Автор

> what are the disadvantages of high-decoupling?
basically you have to think and stop being a code monkey, which is an excellent thing
use to tracing tool and you will be good

dranono
Автор

Great work....can you please cover. RabbitMq in a separate video. May be conceptualize it as a class object . So that we can have publisher and consumer as 2 member methods of the same instance of rabbitmq client.
Was wondering if we can have a separate worker thread for consuming the event.

AmarMishra
Автор

1. 10:00 How can order-service forget about purchase when it is possible that while the payment was processed the product's balance dropped to 0 (zero)?
2. how to handle the case when inventory-service processes the event but fails to send the ACK message?
3. does the broker has to ACK back the ACK message? If yes, what if inventory-service fails to receive it?
4. event sourcing doesn't cause eventual consistency, but event driven architecture.
5. so how CQRS helps with the two DBs?
6. in reality our systems are hybrid depending on the communication scenario. as in, some services may opt for messages, some for sync communication.

Aleks-fpkq
Автор

Can you please implement all that stuff it would be too helpful

prashlovessamosa
Автор

Game servers do not work like this. The main server contains all the game logic and needs to be very fast. It does not go through any broker; instead, it sends data directly to the clients through an open socket.

whiletrue-wbxf
Автор

Thanks for such a good knowledge make some practical or reference some git repo

sauravkumarsharma
Автор

Anyone has an idea on how to handle duplicates in an async context ?

sovzist
Автор

I wonder if InventoryService processes fails, but EmailService sends email successfully, how should we gonna do ?

alienmars
Автор

Decent high level introduction but I think the event sourcing here is not clear here. Event sourcing events should never be exposed directly to the other (microservice) service just like the db. A lot of people make the mistake that event source events should be published as regular events.

dinov
Автор

I don't think event sourcing and cqrs have anything to do with EDA at all, they are individual patterns that can be used without any of the other patterns

dikatok