19. Agenda
Event driven architecture 101
Events in monolith
Processing events outside of main process
Events in cloud
20.
21. Systems based on events are
Loosely coupled
More modular
Easier to expand
Scalable
22. Systems based on events should have
Events
Event producers
Event channel
Event consumers
23.
24. Defining an event
Something happened
It’s somewhat important (you would notify someone about that if you’ve done it
manually)
Change of state or other action occurred
It ended successfully
25. Defining an event
An event can be defined as "a significant change in state".
- Wikipedia
28. Events can be propagated
In memory
Via RabbitMQ, Kafka etc.
Via cloud services like Azure Service Bus, AWS SNS, GCP Pub/Sub, IBM Event
Streams etc.
31. What can consume event?
Some kind of event consumer class which subscribe for event
Cloud services like Functions, Lambdas etc.
Stream analytics platforms like Azure Stream Analytics, Apache Spark etc.
Event Journal/Data Lake
BI
55. Azure Service Bus
Reliable messaging
Traditional ESB
Capable of delivering messages in-order
Supports topics and subscriptions
Support at least once delivery
56. Azure Event Hub
Capable of handling millions of events per second
Can replay event streams
Great for collecting telemetry and passing events to analytics platform
Can handle more data in message
57. Azure Event Grid
Low cost, serverless solutions for small event notifications
Supports dead lettering
Supports publish/subscribe
Paid per event consumption
Go to solution for event driven applications