Sensitivity: Secret
AdvancedEvent-DrivenPatterns
with
AmazonEventBridge
Sheen Brisals
The LEGO Group
sheenbrisals
Sensitivity: Secret
Sheen Brisals
Engineer. Architect. Writer. Speaker. Leader.
AWS Serverless Hero
@ The LEGO Group
Ex Oracle, Hewlett-Packard, Omron, TATA
sheenbrisals sbrisals.medium.com
sheen-brisals
Advanced Event-Driven Patterns - AWS Community Day Dublin
Sensitivity: Secret
Amazon S3
CDN/WAF
AWS WAF
AWS Fargate
Amazon ElastiCache
Amazon API
Gateway
AWS Lambda
AWS Lambda
Amazon Kinesis
Data Firehose
AWS Lambda
Amazon Event
bridge
Amazon SQS
Amazon Dynamo
DB
Amazon SNS
Amazon
CloudWatch
Thirdparty
payments
ecommerce etc
AWS Step
Functions
LEGO.com high level architecture
Serverless
FE & BFF
Amazon ECS on Fargate
Sensitivity: Secret
 Event-driven architecture
 The importance of events
 The need for Amazon EventBridge
 Event-driven patterns
 Resources
Amazon EventBridge
Custom event bus
Default event bus
Partner event bus
Event producers
(sources)
Event
consumers
(targets)
Partner apps
Custom apps
AWS services
Event bus Filtering &
routing
rules
Sensitivity: Secret
Event-DrivenArchitecture(EDA)
Sensitivity: Secret
Event-Driven Architecture (EDA) is an architectural concept
that uses events to communicate between decoupled
microservices asynchronously.
Sensitivity: Secret
carrier
bus
mediator
broker
hub
bridge
Sensitivity: Secret
Sensitivity: Secret
Four main elements of EDA
publisher subscriber
event carrier
event event
Sensitivity: Secret
Events
Sensitivity: Secret
An event is something that has already happened.
Sensitivity: Secret
{
"metadata": {
"version": "1.0",
"domain": "ecommerce",
"subdomain": "orders",
"service": "service-payments",
"type": “data"
},
"data": {
"customer_id": "730e-4dfb-9166",
"order_number": "123-987-456",
"payment_reference": "cc-visa-9076-cv3s5s",
"payment_type": "creditcard",
"amount": 35.99,
"currency": "GBP",
"paid_at": "2023-01-30T09:12:27Z"
}
}
"data": {
"customer_id": "730e-4dfb-9166",
"order_number": "123-987-456",
"payment_reference": "cc-visa-9076-cv3s5s",
"payment_type": "creditcard",
"amount": 35.99,
"currency": "GBP",
"paid_at": "2023-01-30T09:12:27Z"
}
Sensitivity: Secret
Event Categories
• Domain events
• Operational events
• Internal / local events
• Transformed events
• AWS events
Sensitivity: Secret
Event Categories
• Domain events
• Operational events
• Internal / local events
• Transformed events
• AWS events
{
"metadata": {
"version": "1.0",
"domain": "ecommerce",
"subdomain": "orders",
"service": "service-payments",
"type": “data"
},
"data": {
"customer_id": "730e-4dfb-9166",
"order_number": "123-987-456",
"payment_reference": "cc-visa-9076-cv3s5s",
"payment_type": "creditcard",
"amount": 35.99,
"currency": "GBP",
"paid_at": "2023-01-30T09:12:27Z"
}
}
Sensitivity: Secret
Event Categories
• Domain events
• Operational events
• Internal / local events
• Transformed events
• AWS events
{
"metadata": {
"version": "1.0",
"domain": "holiday-travel",
"subdomain": "flight-booking",
"service": "service-status-checker"
},
"data": {
"system": "anytime-payment-provider",
"current_status": "down",
"previous_status": "up",
"status_count": "2",
"checked_at": "2023-03-20T02:15:00Z"
}
}
Sensitivity: Secret
Event Categories
• Domain events
• Operational events
• Internal / local events
• Transformed events
• AWS events
{
"metadata": {
"created_at": "2023-01-30T09:12:27Z",
"trace_id": "skdj834sd3-j3ns-cmass23",
"domain": "rewards",
"service": "third-party-CRM",
"status": "retry"
},
"data": {
"customer_id": "730e-4dfb-9166",
"reward_code": "DXT876LSA536MBS",
"order_numer": "123-987-456",
"info": {
"activity": "reward_update",
"code": 500,
"cause": "Internal Server Error"
}
Sensitivity: Secret
Event Categories
• Domain events
• Operational events
• Internal / local events
• Transformed events
• AWS events
{
"detail": {
"SaleToPOIRequest": {
"EventNotification": {
"EventDetails": "newstate",
"EventToNotify": "Shutdown",
"TimeStamp": "2019-08-07..."
},
"MessageHeader": {
"SaleID": "POSSystemID12345",
"ProtocolVersion": "3.0",
"MessageType": "Notification",
"POIID": "V400m-324688179",
"MessageClass": "Event",
"MessageCategory": "Event",
"DeviceID": "1517998561"
}
}
}
}
{
“event": “$.detail.SaleToPOIRequest.EventToNotify“,
“device": “$.detail.MessageHeader.DeviceID“
}
{
“eventName": <event>,
“deviceId": <device>
}
original
event
transformation logic
transformed event
Sensitivity: Secret
Event Categories
• Domain events
• Operational events
• Internal / local events
• Transformed events
• AWS events
},
"responseElements": {
"x-amz-request-id": "EXAMPLE123456789",
"x-amz-id-2": "EXAMPLE123/5678abcdefghi/mnopqrsEFGH"
},
"s3": {
"s3SchemaVersion": "1.0",
"configurationId": "testConfigRule",
"bucket": {
"name": "festival-promotions",
"ownerIdentity": {
"principalId": "EXAMPLE"
},
"arn": "arn:aws:s3:::festival-promotions"
},
"object": {
"key": "discount_codes.csv",
"size": 1024,
"eTag": "0123456789a6789abcdef",
Sensitivity: Secret
Event Categories
• Domain events
• Operational events
• Internal / local events
• Transformed events
• AWS events
custom
events
Sensitivity: Secret
Event Categories Event Types
• Domain events
• Operational events
• Internal / local events
• Transformed events
• AWS events
• Command
• Query
• Request
• Response
• Data
• Status
• Task
Sensitivity: Secret
EventProducer|Publisher|Source
Sensitivity: Secret
• Event producer is agnostic of the consumers
• Producer adds its origin identity Domain, service, function
• Producer conforms to a contract & structure
Think as API
• Packs just-the-required data
Least data privilege
• Producer adds a unique event identifier Think traceability
Sensitivity: Secret
EventConsumer|Subscriber|Target
• Consumer deals with event duplicates Remember idempotency?
• Stores events before processing Storage-first pattern
• Ordering of events not guaranteed
Well, the world is asynchronous!
• Don’t modify & relay events Respect authenticity
Sensitivity: Secret
EventCarrier|Bus|Mediator|Broker
TheNeedforAmazonEventBridge
Sensitivity: Secret
Prove yourself that serverless works!
Convince your colleagues that serverless is fun!
Satisfy your stakeholders that serverless is good!
Sensitivity: Secret
Tangled event-drivenarchitecture
Lambda pinball architecture
Lambda pinball architectures characteristically
lose sight of important domain logic in the
tangled web of lambdas, buckets and queues as
requests bounce around increasingly complex
graphs of cloud services.
Thoughtworks
Sensitivity: Secret
Tangled event-drivenarchitecture
Lambda pinball architecture
Ball of Serverless Mud (BoSM)
Sensitivity: Secret
Sensitivity: Secret
Sensitivity: Secret
Amazon
EventBridge
Sensitivity: Secret
Amazon EventBridge is a serverless event bus service that
makes it easy to connect your applications with data from a
variety of sources
Sensitivity: Secret
Amazon EventBridge
Custom event bus
Default event bus
Partner event bus
Event producers
(sources)
Event consumers
(targets)
Partner apps
Custom apps
AWS services
Event bus Filtering &
routing rules
Sensitivity: Secret
CORE Features COOL Features
• Custom event bus
• Event filtering
• Event routing
• Multiple targets
• Event transformation
• AWS services integration
• Scheduler
• Partner event source
• Schema registry
• Schema discovery
• Event archive & replay
• API destinations
• Pipes
• Sandbox
Sensitivity: Secret
Event-DrivenPatterns
Sensitivity: Secret
There are only patterns, patterns on top of patterns, patterns
that affect other patterns. Patterns hidden by patterns.
Patterns within patterns.
Chuck Palahniuk
Sensitivity: Secret
Pattern:Hub&Spokeeventbus
Usecase:Microserviceschoreography
Sensitivity: Secret
Usecase–Checkouteventprocessing
Login
Checkout
Payment
Order
Data
sync
Shipping
Sensitivity: Secret
Login
Checkout
Payment
Order
Data
sync
Shipping
Sensitivity: Secret
Login
Checkout
Payment
Order
Data
sync
Shipping
Sensitivity: Secret
Hub-and-spokeeventbus
Customer
login
Login Shipping
Send order
to SAP
Data sync
Customer, VIP,
wishlist sync
Checkout
Submit
order
Payment
Authorize
payment
Commerce
platform
Order
Process
order
Order and
customer
updates
Event
relay
Customer
login
Invoke
every
minute
Events Order
complete
Customer
login
Payment
authorized
Order
submit
Order
complete
EventBridge
FIFO
queue
Sensitivity: Secret
Choreography
This Photo by Unknown Author is licensed under CC BY-SA-NC
Event Bus
Publisher Subscriber
Publisher Publisher
Publisher
Subscriber
Subscriber Subscriber
• No conductor
• Pub-sub model
• Service decoupling
• Asynchronous
• Idempotency
• Traceability
Use choreography to coordinate
different microservices
Sensitivity: Secret
Pattern:Transformedeventflow
Usecase:Sharejust-the-requireddata
Sensitivity: Secret
Usecase–Carparkstatusnoticeboard
Sensitivity: Secret
Transformedeventflow
Vehicle
entry
Billboard
feeder
Vehicle entered
Car park status
Vehicle
exit
Vehicle exited
Sensitivity: Secret
{
"detail": {
"metadata": {
“domain": “LEGOLAND-WINDSOR",
“service": “vehicle-entry",
“carpark": “Upper Level",
"type": “CAR",
"status": “ENTERED"
},
"data": {
“registration": “XY12ABC",
“entryTime": “1576826331“,
“spaces”: 125
}
}
}
}
Transformedeventflow
Vehicle entry event
{
“location": “$.detail.metadata.carpark“,
“available": “$.detail.data.spaces“,
}
Data paths
• Limits event data exposure
• Customize target delivery data
“<location> has <available> spaces!!"
Data template
Upper Level has 125 spaces!!
Sensitivity: Secret
Staticeventflow
Checkout Monitor
Order placed Order prompt
Sensitivity: Secret
{
"detail": {
"metadata": {
“domain": “LEGO-SHOP",
“service": “service_checkout",
"type": "ORDER",
"status": “SUBMITTED"
},
"data": {
"orderNumber": "T123456789",
"customerId": "bf3703467718“,
“locale”: “en-GB”,
“value”: 59.99
}
}
}
}
Checkout Monitor
Order placed Order prompt
Extensive
order
data
{
“prompt": “order"
}
Static
constant
data
• Original event is not exposed
• Ideal for hiding sensitive data
• Controls data flow to 3rd parties
Sensitivity: Secret
Pattern:CodelessAPIintegration
Usecase:EventdespatchwithAPIDestination
Sensitivity: Secret
Loyalty
registration
Joins loyalty program
Retail
customer
Retail POS
device Customer
accounts
Loyalty
Service
Customer
Service
Async registration
Registration process
Loyalty
number
Loyalty
number
UseCase:Customerregistration
Enroll
Sensitivity: Secret
Retail POS
app
Enrollment API
Auth
Auth
Handler Customer API
Invoke
Enrollment Registration
X
DLQ DLQ handler
TraditionalSyncTroubles
Sensitivity: Secret
Enrollment
event
Retail POS
app
Loyalty
event bus
Enrollment API
Auth
Auth
Handler Target
rule
Customer API
Invoke
Enrollment Choreography Registration
Event-driven
Sensitivity: Secret
Enrollment
event
Retail POS
app
Loyalty
event bus
Enrollment API
Auth
Auth
Handler Target
rule
Customer API
Invoke
Enrollment Choreography Registration
Destination
Event-drivenwithAPIDestination
Sensitivity: Secret
Source
event
Event
filter
Event
transform
Event
target
Routing
rule
TargetRule-APIDestination
Sensitivity: Secret
API
Destination
target
API
connection
API
endpoint
Basic auth OAuth auth
API key auth Custom Partner
Endpoint URL
HTTP method
Invocation rate
Username
Password
Key name
Value
Auth endpoint
HTTP method
Client ID
Client secret
*****
APIDestinationComponents
Sensitivity: Secret
• Secrets Manager integration
• Rate limit support
• Built-in retry
• Functionless
• Partner targets
• Payload size
• Fire and forget
• No API response handling
• 5 seconds timeout
• Observability challenges
APIDestination–BenefitsvsBeAwareOf
Sensitivity: Secret
Pattern:Circuit-Breaker
Usecase:Failureretrieswitharchive&replay
Sensitivity: Secret
Circuit breaker
Service
consumer
Closed
circuit
Service Service
consumer
Open
circuit
Service
Service
consumer
Service
status
Service
Failed
requests
• Service status check
• Open, half-open, closed
• Essential in distributed services
• Failure replay considerations
Sensitivity: Secret
Use case: Guaranteed data update
Order processingflow
waits for the responses
Sensitivity: Secret
Pattern: Circuit-breaker with archive-replay
Order
Processing
Vendor
Mediator
Event bus
SaaS
Platform
Orders Cache
SUCCESS – All good
ERROR – Data
RETRY – Timeout, 5XX
Sensitivity: Secret
Sensitivity: Secret
Vendor
Mediator
Event bus
Order
status events
Order status
consumer rule
Order retry archive
rule
Event
archive
success
error
retry
retry
Events archive
An event archive is a collection of events that
have been published on an event bus.
Sensitivity: Secret
An event archive is a collection of events that
have been published on an event bus.
Resources:
VoucherArchive:
Type: AWS::Events::Archive
Properties:
ArchiveName: OrdersArchive
Description: Orders to be resubmitted
EventPattern:
<YourEventFilter>
RetentionDays: 10
SourceArn: 'arn:aws:..:event-bus/loyalty'
{
"detail": {
"metadata": {
"domain": [
"LEGO-LOYALTY"
],
"service": [
“order-submission"
],
"category": [
"task-status"
],
"type": [
“order"
],
"status": [
"retry"
]
}
}
}
Sensitivity: Secret
Vendor
Mediator
Event bus
Order
status events
Order status
consumer rule
Order retry archive
rule
Event
archive
success
error
retry
retry
SaaS
Platform
Replay
trigger
Status
Scheduler
API
retry events
retry events
Events replay
Sensitivity: Secret
EventsReplay
StartReplay - API
EventStartTime: timestamp
EventEndTime: timestamp
ReplayName: “OrdersReplay_20220330201522”
{
"detail":{
"metadata":{
"domain":"LEGO-LOYALTY",
"service":“order-submission",
"category":"task-status",
"type":“order",
"status":"retry"
},
"data":{
"request_id":"AbLhmQ",
"reference":"P6IQd",
"order":"M101"
}
},
"replay-name": “OrdersReplay_20220330201522”
}
Replayed Event
Replay API
Sensitivity: Secret
HandlingReplayedEvents
StartReplay - API
EventStartTime: timestamp
EventEndTime: timestamp
ReplayName: “OrdersReplay_20220330201522”
{
"detail":{
"metadata":{
"domain":"LEGO-LOYALTY",
"service":“order-submission",
"category":"task-status",
"type":“order",
"status":"retry"
},
"data":{
"request_id":"AbLhmQ",
"reference":"P6IQd",
"order":"M101"
}
},
"replay-name": “OrdersReplay_20220330201522”
}
Replayed Event
Replay API
{
"detail": {
"metadata": {
"domain": [
"LEGO-LOYALTY"
],
"service": [
“order-submission"
],
"category": [
"task-status"
],
"type": [
“order"
],
"status": [
"retry"
]
}
},
"replay-name": [{
“prefix": “OrdersReplay”
}],
}
Replay Event
Filter Pattern
Sensitivity: Secret
• Flexible retention period
• Multiple archives
• Replay start & end time
• Replay target rule
• Event separation
• Replay event exodus
• Order not maintained
• Take care of idempotency
• No archive visibility
• Replay delay
Archive-Replay–BenefitsvsBeAwareOf
Sensitivity: Secret
Pattern:Distributedorchestration
Usecase:Cross-serviceorchestrationwithtasktoken
Sensitivity: Secret
Choreography
This Photo by Unknown Author is licensed under CC BY-SA-NC
Event Bus
Publisher Subscriber
Publisher Publisher
Publisher
Subscriber
Subscriber Subscriber
• No conductor
• Pub-sub model
• Service decoupling
• Asynchronous
• Idempotency
• Traceability
Use choreography to coordinate
different microservices
Sensitivity: Secret
Orchestration
Sensitivity: Secret
Orchestration
• Orchestrator
• Workflow
• Long running
• Coordination of tasks
• Low code
• Pause & resume
Data
Process
Process Process
Sensitivity: Secret
Orchestration
• Orchestrator
• Workflow
• Long running
• Coordination of tasks
• Low code
• Pause & resume
Data
Process
Process Process
“Cross-service orchestration.
Good or bad?” “Logic:
Inside a function or
in a state machine?”
Use orchestration inside
microservices
Use distributed orchestration
across microservices
Sensitivity: Secret
Use case: Cross-service task coordination
Data Process
Process
Long running
process
API
Function
Microservice A Microservice B
Microservice C
Sensitivity: Secret
Conversationalevent-drivenpattern
A B
Event bus
Request Request
Response Response
Sensitivity: Secret
Publicclient
Loyalty Service
SaaS
CRM
Data
Feeder
Loyalty
Sessions
Event
Bus
Event Source
Orders
Service
Status
Admin
Rewards
Members
SaaS
Survey
LEGO
Data Lake
NPS
Provider
CRM
Mediator
Fraud Engine
Events
Ingestion
LEGO
Event Broker
Order
Management
Sensitivity: Secret
Sensitivity: Secret
Pattern: Distributed orchestration
Microservice A Microservice X
• Keep services decoupled
• Request - response
• Receive completion note
Sensitivity: Secret
Pattern: Distributed orchestration
Microservice A Microservice X
Sensitivity: Secret
Sensitivity: Secret
"Dispatch Voucher": {
"Type": "Task",
"Resource": "arn:aws:states:::events:putEvents.waitForTaskToken",
"HeartbeatSeconds": 6000,
"Parameters": {
"Entries": [
{
"Detail": {
"metadata": {
"domain": "LEGO-LOYALTY",
"service": "service-loyalty-orders",
"category": “internal",
"type": “request",
"status": "processed"
},
"data": {
"loyalty_request_id.$": "$$.Task.Token",
"loyalty_reference.$": "$.loyalty_reference",
"merchant_reference.$": "$.merchant_reference",
"loyalty_order_reference.$": "$.loyalty_order_reference",
"vouchers": [
{
"voucher_code.$": "$.voucher_code"
}
]
}
},
"DetailType": "event",
"EventBusName": "the-custom-event-bus-arn",
"Source": "service-loyalty-order-process"
Sensitivity: Secret
"AAAAKgAAAAIAAAAAAAAAbLhmB7wnOsiBFAq6Cicj2acx8iQe6GDUOd2u+29UMH4y9cqbSO+xNGww
gtfDF/p6kLNHVJVaqjx0GFsstYNoaAdFr4Bmq74ghKhPLny/v2RaYefvylVmOr5wIRHxJy+G8t82NNp2+VEf
dhCSYqRWbFj7aLccbCfPZOnn5BeSN224XMVtP6IF7YcwQd+zqD/ypW+rLh4iayZjKLbyxNyXxY+EdM36
dZzZ/jFbuneNX27nq5WmrP6HKPaKdCT9A1aWv1V1zFct8K+iAzKzo9W8PknfSlNz5dZF1KBfHtAFPILGe
PDwzQoY5MEN3RhodChiEtw6HggXOsSQhtCTqP3bUq5uYhpTRinmmksgNV62uFv2Xk+uFTSumLtigXh
56Z1v8LlBklmY/ACy5qRkNfahIpTZFLQypdiuayQFnY8Cok8U6COeKR+x6zl7DZxuXk8rfc81AH97QTPzk4
Lp+wHdpSsSbvFWvLQGvpdh70Gn9hC45MPw73/gykpCMzs3w1Nbq0NWUAP126i5U4mGOnwQIUKZe4
hSXL+Tplxnnxz5CzHM1wZOm+VLVSP88ae/FhFyjloBESjbXenK1bWyy3SpS="
Sample task token
Sensitivity: Secret
Sensitivity: Secret
Sensitivity: Secret
Pattern:GatekeeperBuspattern
Usecase:GuardingcontextboundarywithEventBridge
Sensitivity: Secret
Publicclient
Loyalty Service Platform
SaaS
CRM
Data
Feeder
Loyalty
Sessions
Event
Bus
Event Source
Orders
Service
Status
Admin
Rewards
Members
SaaS
Survey
LEGO
Data Lake
NPS
Provider
CRM
Mediator
Fraud Engine
Events
Ingestion
Sensitivity: Secret
Publicclient
Loyalty Service Platform
SaaS
CRM
Data
Feeder
Loyalty
Sessions
Event
Bus
Event Source
Orders
Service
Status
Admin
Rewards
Members
SaaS
Survey
LEGO
Data Lake
NPS
Provider
CRM
Mediator
Fraud Engine
Events
Ingestion
Sensitivity: Secret
Publicclient
Loyalty Service Platform
SaaS
CRM
Data
Feeder
Loyalty
Sessions
Event
Bus
Event Source
Orders
Service
Status
Admin
Rewards
Members
SaaS
Survey
LEGO
Data Lake
NPS
Provider
CRM
Mediator
Fraud Engine
Events
Ingestion
Domain events
• Businesssignificant
• Outward & inwardflowing
• Restricted access
Operational/internalevents
• Internal visibility
• Messengers& Catalysts
• Available within the boundary
Sensitivity: Secret
Publicclient
Loyalty Service Platform
SaaS
CRM
Data
Feeder
Loyalty
Sessions
Event
Bus
Event Source
Orders
Service
Status
Admin
Rewards
Members
SaaS
Survey
LEGO
Data Lake
NPS
Provider
CRM
Mediator
Fraud Engine
Webhook
Domain events
• Businesssignificant
• Outward & inwardflowing
• Restricted access
Operational/internalevents
• Internal visibility
• Messengers& Catalysts
• Available within the boundary
Gatekeeperservicebus
Internal
Event
Bus
Gate
Keeper
Bus
External
subscribers
Sensitivity: Secret
Publicclient
Loyalty Service Platform
SaaS
CRM
Data
Feeder
Loyalty
Sessions
Event Source
Orders
Service
Status
Admin
Rewards
Members
SaaS
Survey
LEGO
Data Lake
NPS
Provider
CRM
Mediator
Fraud Engine
Events
Ingestion
Domain events
• Businesssignificant
• Outward & inwardflowing
• Restricted access
Operational/internalevents
• Internal visibility
• Messengers& Catalysts
• Available within the boundary
Gatekeeper
Bus
Internal
Event
Bus
External
Targets
Sensitivity: Secret
FAQ:Singlebusormultiplebuses?
Sensitivity: Secret
• Complex
• Automate pub / sub onboarding
Singleenterprisebus
Multipleenterprisebuses
Singlebusperdomain
Multiplebusesperdomain
• Domain specific
• Better event flow control
• Cross-account event sharing
• Internal vs external bus
• Better control & visibility
• Cross-bus, cross-account sharing
• Compact & controlled option
• Better visibility & governance
• Cross-service sharing
Sensitivity: Secret
FAQ:CanIreplaceKinesiswithEventBridge?
Sensitivity: Secret
• Event streamer
• Event size: 1 MB
• Event batching
• Event store: 24hr – 1yr
• Sequence number
• Limited targets
• On-demand & provisioned
o Event choreographer
o Event size: 256 KB
o No event batching
o Event archive
o No sequencing
o Many targets
o On-demand scaling
Kinesis EventBridge
Services-scale refined event
ingestion and routing
Cloud-scale raw event
ingestion and processing
Sensitivity: Secret
Resources
Sensitivity: Secret
https://serverlessland.com/patterns
Sensitivity: Secret
https://serverlessland.com/event-driven-architecture/visuals
Sensitivity: Secret
https://cdkpatterns.com/
Sensitivity: Secret
https://bit.ly/3iOXHhY
Sensitivity: Secret
Go
Build
Serverless
Thank
You!
sheenbrisals
sbrisals.medium.com
sheen-brisals

More Related Content

PDF
Amazon EventBridge
PDF
Amazon EventBridge - Unlocking Event Driven Architecture in AWS [Nov 2020]
PDF
Serverless Microservices Communication with Amazon EventBridge
PPTX
AWS_IoT_Device_Management_Workshop.pptx
PDF
윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션
PPTX
AWS ReInvent 2020: SEC313 - A security operator’s guide to practical AWS Clou...
PDF
How LEGO.com Accelerates With Serverless
PDF
Voxxed Athens 2018 - Serverless by Design
Amazon EventBridge
Amazon EventBridge - Unlocking Event Driven Architecture in AWS [Nov 2020]
Serverless Microservices Communication with Amazon EventBridge
AWS_IoT_Device_Management_Workshop.pptx
윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션
AWS ReInvent 2020: SEC313 - A security operator’s guide to practical AWS Clou...
How LEGO.com Accelerates With Serverless
Voxxed Athens 2018 - Serverless by Design

More from SheenBrisals (16)

PPTX
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
PPTX
Eliminate the complexities of Event-Driven Architecture with Domain-Driven De...
PPTX
Patterns and practices for developing enterprise-scale applications with serv...
PPTX
Is there a place for QA in autonomous fast flow teams?
PPTX
Patterns and practices for an enterprise-scale adoption of serverless!
PPTX
How to study, think, work, and live as an Engineer!
PPTX
Enterprise Serverless Adoption. An Experience Report
PPTX
Sustainability In Serverless
PPTX
How to Grow a Serverless Team in an Enterprise
PDF
The Road To Event-Driven Architecture
PDF
Enterprise Serverless Adoption. An Experience Report
PDF
Shillings in Serverless
PDF
To Serverless And Beyond!
PDF
Sloppy Little Serverless Stories
PDF
How to Grow a Serverless Team
PDF
Design and Develop Serverless Applications as Set-Pieces
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
Eliminate the complexities of Event-Driven Architecture with Domain-Driven De...
Patterns and practices for developing enterprise-scale applications with serv...
Is there a place for QA in autonomous fast flow teams?
Patterns and practices for an enterprise-scale adoption of serverless!
How to study, think, work, and live as an Engineer!
Enterprise Serverless Adoption. An Experience Report
Sustainability In Serverless
How to Grow a Serverless Team in an Enterprise
The Road To Event-Driven Architecture
Enterprise Serverless Adoption. An Experience Report
Shillings in Serverless
To Serverless And Beyond!
Sloppy Little Serverless Stories
How to Grow a Serverless Team
Design and Develop Serverless Applications as Set-Pieces
Ad

Recently uploaded (20)

PPTX
Why 2025 Is the Best Year to Hire Software Developers in India
PPTX
SmartGit 25.1 Crack + (100% Working) License Key
PDF
Internet Download Manager IDM Crack powerful download accelerator New Version...
PPTX
Viber For Windows 25.7.1 Crack + Serial Keygen
PPTX
Chapter 1 - Transaction Processing and Mgt.pptx
PPTX
ROI from Efficient Content & Campaign Management in the Digital Media Industry
PDF
Odoo Construction Management System by CandidRoot
PPTX
Post-Migration Optimization Playbook: Getting the Most Out of Your New Adobe ...
PDF
Bright VPN Crack Free Download (Latest 2025)
PPTX
HackYourBrain__UtrechtJUG__11092025.pptx
PDF
Crypto Loss And Recovery Guide By Expert Recovery Agency.
PPT
3.Software Design for software engineering
PDF
Workplace Software and Skills - OpenStax
PPTX
Plex Media Server 1.28.2.6151 With Crac5 2022 Free .
PPTX
Human-Computer Interaction for Lecture 2
PDF
Engineering Document Management System (EDMS)
PDF
CapCut PRO for PC Crack New Download (Fully Activated 2025)
PDF
IT Consulting Services to Secure Future Growth
PDF
Coding with GPT-5- What’s New in GPT 5 That Benefits Developers.pdf
PPTX
Swiggy API Scraping A Comprehensive Guide on Data Sets and Applications.pptx
Why 2025 Is the Best Year to Hire Software Developers in India
SmartGit 25.1 Crack + (100% Working) License Key
Internet Download Manager IDM Crack powerful download accelerator New Version...
Viber For Windows 25.7.1 Crack + Serial Keygen
Chapter 1 - Transaction Processing and Mgt.pptx
ROI from Efficient Content & Campaign Management in the Digital Media Industry
Odoo Construction Management System by CandidRoot
Post-Migration Optimization Playbook: Getting the Most Out of Your New Adobe ...
Bright VPN Crack Free Download (Latest 2025)
HackYourBrain__UtrechtJUG__11092025.pptx
Crypto Loss And Recovery Guide By Expert Recovery Agency.
3.Software Design for software engineering
Workplace Software and Skills - OpenStax
Plex Media Server 1.28.2.6151 With Crac5 2022 Free .
Human-Computer Interaction for Lecture 2
Engineering Document Management System (EDMS)
CapCut PRO for PC Crack New Download (Fully Activated 2025)
IT Consulting Services to Secure Future Growth
Coding with GPT-5- What’s New in GPT 5 That Benefits Developers.pdf
Swiggy API Scraping A Comprehensive Guide on Data Sets and Applications.pptx
Ad

Advanced Event-Driven Patterns - AWS Community Day Dublin