What is Event Driven Architecture? (EDA - part 1)

preview_player
Показать описание
Introduction video to Event Driven Architecture (aka Message Driven Architecture or PubSub).

With this video I start the series of videos regarding Event Driven Architecture, also known as Message Driven Architecture or Publish/Subscribe (PubSub) in the most generic concepts. We start covering the concepts, looking into the pros and cons and some examples of how this architecture works. In the next videos in the series I will be covering also additional concepts that relate to microservices and some additional software architecture patterns associated to EDA. At the end of the video you will get a clear idea of what is Event Driven Architecture.

-----------------------

🔖 Resources:

-----------------------

-----------------------
Remember you can reach me here:

-----------------------
In A Dev' Story I explain Software Development related topics from my point of view. I'll be explaining different topics in "Chapters" according to the stage of the story I think they belong. Hope is as entertaining for you as it's fun for me to create these videos

Thanks again for watching! Feel free to like, comment, share and subscribe, it means a lot to me and helps the channel grow.

#Microservices #SoftwareArchitecture #EventDrivenArchitecture
Рекомендации по теме
Комментарии
Автор

Hey folks!👋 Want to have hands-on practice on these concepts? 🤓


They have great hands-on tutorials and easy to get up to speed with complex systems. Check them out!

ADevStory
Автор

Event driven architecture
Event - something that happened
- immutable or can't be changed.
- can be communicated or implemented through event notification.


Command - request, or order, expects a response
- can be communicated or implemented through message.

Event Driven architecture - also referred to as publisher-subscriber model.
Three Components
1. Producer
2. Broker
3. Consumer

Producer -> Broker -> Consumer
- a producer creates events that are redirected by a broker into the right consumer.
- consumers will react to this event and execute things they need to execute.

Benefits
- decoupling (not dependent to other services)
- dependency inversion
- scalability

Traditional architecture
Service1 -> Service

Event driven architecture
Service1 -> Event -> Service2

- in an event driven architecture, service1 doesn't need to know about service2 vice versa.
- they communicate through events: producing and consuming events.


Events Persistence
- using a broker. ex kafka
- previously you need service1 and service2 to be both online and pass data, but
having a broker enables events to be persisted. in other words brokers can be used a temporary storage if there is a situation that the consumer is down, once the consumer is online again the data can be send to the consumer again.

traditional architecture
Service1 -> Service2

Service1 -> Broker (havings events) -> Service2

When to use
1. Scalability is more important than performance.
2. Data replication/Parallel Processing - you need the same information in multiple systems.
- if you multiple services (subscribers) that needs to be process or executed at the same time.

javier.alvarez
Автор

Its the first video I have ever seen that showed pros and cons of Event Driven Architecture. This is perfect example that one size doesn't fit all. Awesome content and thank you so much.

SuperPradeep
Автор

I really liked the way you have organized the content and made it very crisp and clear for anybody to have a high level knowledge or those who want to recap just before interviews. A very useful series.

pramilaveluri
Автор

Yes I prefer to differentiate between the event and command notions, since events are simply a notification that can trigger something else asynchronously while a command can be rejected and the commander must receive the rejection code and the cause of his rejection

MrYass
Автор

I arrived to learn about software architecture and I find more than just that. Thanks! Cristhian. It's kind of difficult for me to understand some concepts but I don't care, I just want to learn even if the learning curve is very steep.

yerson
Автор

Hey, thanks man for the awesome series..love you ❤

NomeshDeSilva
Автор

These videos are the best videos for starters. Also good for experienced folks. Thanks for the amazing content.

kirtimanmishra
Автор

I've just seen all the 3 videos of this series. Thanks a lot.

zparragi
Автор

action packed 10 min, very nice explanation characteristics of EDA and when to use and not use

vinodcs
Автор

Definitely most easy to understand and best presented series on system design

amirtv
Автор

I'm planning to take CS in college and your videos are really inspiring me to become a Software Architect thanks a lot!! Can't wait to see more of your vids!!!

gabriellebeduya
Автор

Great content - enjoying the series so far!

tylergaugler
Автор

Thank you for sharing your knowledge in such an amazing way. I would like to suggest you put all these concepts into practice, implementing it in some language you prefer. I think that would be great.

ismaelperezmesa
Автор

Loved the illustrations. Subscribed immediately

Jashobantac
Автор

Very nice video - thanks for giving me a good understanding!

lugojenkins
Автор

You deserve a way more visibility, great content!

herodotogates
Автор

very very nice tutos, Big thx for the effort !!

lahwfsk
Автор

I dont know much of CS and this helped me a lot! Taking Azure Dev Associate certification

trini
Автор

thanks for this video series. What would be nice to see is that if you could explain different architecture Patterns and go for a sample project and select a pattern with explaining reason and implement the architecture with technology and create at the end a very simple product. Let's say a web application built through cloud and could also be implemented by watchers by watching your video. Then another example another pattern implementation. With those key samples, the one who has interest in learning software architecture can build his/her understanding and build his/her own knowledge about software architecture and implementation of it.

starkarabil
visit shbcf.ru