Тёмный

Building next-gen applications with event-driven architectures | .NET Conf 2023 

dotnet
Подписаться 301 тыс.
Просмотров 11 тыс.
50% 1

In a world where events shape our interactions, embracing an event-driven mindset empowers innovation and responsiveness at every turn. By leveraging the power of events, businesses can stay ahead of the competition, deliver superior customer value, and achieve long-term success.
In this talk, we will show how to use event-driven architecture to decouple and decentralize application components, promoting modular and independent development, and flexibility in system design. Learn how you can start thinking ""event driven"" as you approach designing your application. We will do a live demo using .NET8 and Azure PaaS services to highlight the immense potential of EDA in its ability to respond in real-time to events occurring in other systems and applications. By understanding the key components and benefits of EDA, you will be equipped to evaluate whether it is the right fit for your organization and empowered to initiate the implementation of event-driven architecture in your systems.
Download .NET 8 - aka.ms/get-dot...
Hack Together - aka.ms/hacktog...
Learn collection - aka.ms/learn-d...
.NET 8 Survey - aka.ms/dotnet-...
Local Events - aka.ms/dotnetc...
Hero blog - aka.ms/dotnet8...
Blog: aka.ms/dotnet/...
Twitter: aka.ms/dotnet/...
TikTok: aka.ms/dotnet/...
Mastodon: aka.ms/dotnet/...
LinkedIn: aka.ms/dotnet/...
Facebook: aka.ms/dotnet/...
Docs: learn.microsof...
Forums: aka.ms/dotnet/...
🙋‍♀️Q&A: aka.ms/dotnet-qa
👨‍🎓Microsoft Learn: aka.ms/learndo...
#dotnet

Опубликовано:

 

28 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 20   
@pavellepin
@pavellepin 10 месяцев назад
It would be great if you mentioned the cons of the architecture as well. For example it won't work well for stateful sequential applications. When you suggest using a DB trigger - please also mention that a trigger is not aware of the source of the changes. In general, it is not a good practice to use it for business logic, as let's say some maintaining operations _could_ trigger unexpected actions.
@acodersjourney
@acodersjourney 10 месяцев назад
Your expertise is evident in your content. Keep it up!
@TeenaIdnani
@TeenaIdnani 10 месяцев назад
Thank you
@ViniciuxMariano
@ViniciuxMariano 10 месяцев назад
Nice content, but very bad quality audio.
@TeenaIdnani
@TeenaIdnani 10 месяцев назад
Oh! I am sorry that you are facing the audio issue
@omuleanu
@omuleanu 10 месяцев назад
@@TeenaIdnaniit's not him specifically that's facing the problem, the audio is like you constantly enter and exit a tunnel; a better mic for the future would be nice
@davidantolingonzalez4929
@davidantolingonzalez4929 9 месяцев назад
In the scenario that the subscriber is down (or previous to the first time is up because it is a new service) how can it process all the events sent in the meantime? In the sample scenario, if the shipping service is down when the order service sends the order created event, it needs to process that event even if shipping has been down for a long time.
@pavellepin
@pavellepin 10 месяцев назад
There is a missing "web" prefix in the caption. I mean event driven architecture for other platforms (like desktop apps) could be something similar (as the idea is the same), but building details are different.
@pascalsi1
@pascalsi1 9 месяцев назад
Nice to see that IT people noticed that the world is mostly event driven and not service driven. I work in the industrial automation OT (Operation technology) and we know the world is event driven for more than 30 years. An industrial robot accepts commands and provides notifications. We do this with MQTT and Kafka. Even our Web application for process visualization does not use HTTP/REST web services, but is MQTT event driven with PAHO. Azure event hub is by far too complicated and does not fit our needs
@paymantatar4726
@paymantatar4726 10 месяцев назад
Hey, Nice work. ✌
@TeenaIdnani
@TeenaIdnani 10 месяцев назад
Thanks, There is a QR Code for the demo source code right at the end of the session. That has the github repo link.
@andybout5139
@andybout5139 10 месяцев назад
Hi Teena, I am struggling with one aspect of event driven architectures. If a process fails because of a business data issue (i.e. customer credit status not entered as an example) and want to rerun the process that failed caused by the event (perhaps other process could run) how is that managed. The only way I can see that working is to have a boolean flag that some other process or a user updates when the data condition is corrected and the event is activated but it would only be for certain processes. Not sure how event driven architectures handle this.
@pavellepin
@pavellepin 10 месяцев назад
As mentioned in the presentation, consumers subscribe to completed events. Events can be "positive", like PaymentCompleted, or negative like PaimentFailed. So if something happened during a business process, it should be handled by a service responsible for retry/recovery (if recovery is possible). In a clean architecture, all events are one-way and if a feedback/result is needed, the sender should subscribe to a correspondent event (which in its turn will have information about initial event's result).
@renatorfr
@renatorfr 9 месяцев назад
Hi, thanks for the presentation :) If you need save the Order in a relational database, would you do it before creating the event or as an event subscriber?
@hydtechietalks3607
@hydtechietalks3607 29 дней назад
as event subscriber - create Order --> Save Order??
@Taka-ov4fd
@Taka-ov4fd 10 месяцев назад
Great session! I have one question. In this session you mentioned that event design is very important. I assume by event design you mean event modeling, How do you do event modeling? Do you write about how you do it in some blog or present it in some other video?
@TeenaIdnani
@TeenaIdnani 10 месяцев назад
Great question! Event modeling and design is a crucial aspect when building effective event-driven integrations and architectures! It requires understanding consumers, mapping system state changes, creating expressive event types, building targeted payloads, and augmenting with descriptive context. I'm planning a full blog post to detail my process soon, Please stay tuned and let me know if any other event modeling questions!
@Alyssa669
@Alyssa669 10 месяцев назад
Hey, great presentation. How would you handle the dead letter events in your design?
@TeenaIdnani
@TeenaIdnani 10 месяцев назад
In this design, we handle dead letter events by setting up a dead letter queue/topic for events that fail processing. And then based on the eventId and other parameters, replay the events that are required by triggering an update in the original event stored in the event store (Azure CosmosDB) which would then retrigger the event handler to process the failed event.
@Alyssa669
@Alyssa669 10 месяцев назад
@@TeenaIdnani awesome, this design would have solved so many problems that I encountered while processing of the failed events. Thank you so much for sharing.
Далее
Use C# with Godot to make Games! | .NET Conf 2023
23:49
КАК БОМЖУ ЗАРАБОТАТЬ НА ТАЧКУ
1:36:32
Event Driven Architecture EXPLAINED in 15 Minutes
14:55
Concurrent Hosted Service in .NET 8 | .NET Conf 2023
31:12
.NET and C# are in trouble. Here is what I'd do.
10:57
A Beginner's Guide to Event-Driven Architecture
37:28