SlideShare a Scribd company logo
1 of 28
Download to read offline
JakubPilimon
EVENT-DRIVEN ARCHITECTURE
TRAPS
… AND HOW TO AVOID THEM
JakubPilimon
DISCLAIMERS
• Traps based on private experiences
• Solutions worked in my contexts
• Haven’t pushed anything to production since … 6 months
• … But this is based on previous experiences
• Completely new content, so things might not work
• … Please don’t throw tomatoes
JakubPilimon
WHOAMI
SPRING DEVELOPER ADVOCATE
AND PROGRAMMER
Loves to tackle complex enterprises with:
• Domain-Driven Design,
• Event Storming,
• Test-Driven Development,
• Spring
Being a microservice freak, architecture is his main area of interest too.
DZone MVB awarded blog: pillopl.github.io
Co-founder of #dddbyexamples initiative: github.com/ddd-by-examples
JakubPilimon
PATTERN THAT PROMOTES DETECTION
AND REACTION TO STATE CHANGES
REPRESENTED BY DOMAIN EVENTS
ME
EVENT-DRIVEN TO ME
JakubPilimon
EVENT-DRIVEN TO ME
• EDA != “I have microservices”
• EDA != “I have a message broker”
• Events might be transported for instance via HTTP
• Events can live only in application memory
• … Events might not be even visible in the code
• … but domain event is there in the business process
• Event Sourcing counts too
JakubPilimon
EVENT-DRIVEN TO ME
EVENT 1
EVENT 2
EVENT 3
JMS/AMQP
HTTP
IN MEMORY
DB #1 DB #1 or not
DB #2
TRAP #1
MISSING AN EVENT
JakubPilimon
BACKEND2. Start transaction
1. Customer plugged in
4. Stop transaction
3. Customer finished charging
BACKEND
5. Customer unplugged
JakubPilimon
JakubPilimon
TRAP #1: MISSING AN EVENT
REASONS:
▸ Treating boundary of software as equals to boundary of business process
▸ Not spotting that our piece of software is not source of truth
▸ There is semantics of the protocol and there is implementation
SOLUTIONS:
▸ Event Storming can help you find EXTERNAL events and boundaries of your software
▸ Think about assumptions you make about consistency and don’t try to be consistent
no matter what (sometimes it is impossible)
▸ Attach to semantics, not to implementation (focus on an intention of any
communication)
TRAP #2
VERSIONING OF BEHAVIOR
JakubPilimon
BACKEND1. Stop session
BACKEND TAXES
2. ChargingSessionFinished
TAXES
3. Calculate and insert tax
EVENT 1
EVENT 2
EVENT 3
JakubPilimon
TRAP #2: VERSIONING OF BEHAVIORS
REASONS:
▸ Hard-coded values are not temporal
▸ Occurred vs Arrived mismatch!
SOLUTIONS:
▸ Calculation logic in projection should be done at time of event creation
and the result should be inside the event
▸ Same with external calls
TRAP #3
EXTERNAL CALLS
JakubPilimon
TAXES
ChargingSessionFinished
TAX RATES
JakubPilimon
TRAP #3: EXTERNAL CALLS
REASONS:
▸ Thinking that external systems are always temporal
▸ Relying on single point of truth
SOLUTIONS:
▸ External calls should be done at time of event creation and the result should be
inside the event
▸ Listening to another upstream of events and join both streams by building local
read model
TRAP #4
IGNORING CAP THEOREM
TRAP #5
ANEMIC EVENTS
JakubPilimon
TRANSACTION LOG
MYSQL
session.finish();
T1 T2 T3 T4 T…
1
2
3
4
5
6
7
8
9
10
3
7
9
1
4
5
6
“charging_sessions”
Stream of events
JakubPilimon
TRAP #5: ANEMIC-EVENTS
REASONS:
▸ Focusing on data instead of behaviors
SOLUTIONS:
▸ Domain events (with behavior)
▸ Thinking about business intent of any change, not only
about the representation of that change
JakubPilimon
TRANSACTION
eventPublisher.publish(…);
proxy.commit(…);
chargingSessionRepository
.findById(…)
session.finish(…);
JakubPilimon
TRAP #4: IGNORING CAP THEOREM
REASONS:
▸ Ignoring the fact that every now and then things will not work
▸ Trying to be consistent NOW!
▸ Experience with 2PC
SOLUTIONS:
▸ At-least once (and deduplicating) or at-most once
▸ Event sourcing
▸ Listen to yourself
▸ Log tailing
TRAP #6
VERSIONING OF EVENTS
JakubPilimon
I WILL JUST FIND IT AND
UPDATE IT. WHAT CAN
POSSIBLY GO WRONG?
JakubPilimon
1
2
3
“sessions”
BACKEND
4
4’
ChargingSessionFinished
Charging session has finished
ChargingSessionFinishedV2
CONSUMER1 CONSUMER2
4 4’
JakubPilimon
1
2
3
1’
2’
3’
“sessions” “sessions-v2”
TRANSLAT
OR
JakubPilimon
TRAP #6: VERSIONING OF EVENTS
REASONS:
▸ Using strong schema
▸ Canonical shared model of events - coupling
SOLUTIONS:
▸ Double-write
▸ Weak schema
▸ Copy and replace
▸ Schema server
JakubPilimon
QUESTIONS?
https://github.com/pilloPl/edatraps
https://github.com/ddd-by-examples

More Related Content

Similar to Event-Driven Architecture Traps

Cloud Event-Driven Architectures with Spring Boot and Spring Cloud
Cloud Event-Driven Architectures with Spring Boot and Spring CloudCloud Event-Driven Architectures with Spring Boot and Spring Cloud
Cloud Event-Driven Architectures with Spring Boot and Spring CloudVMware Tanzu
 
Event-Driven Architecture Traps - Jakub Pilimon
Event-Driven Architecture Traps - Jakub PilimonEvent-Driven Architecture Traps - Jakub Pilimon
Event-Driven Architecture Traps - Jakub PilimonVMware Tanzu
 
Estimation Protips - NCDevCon 2014
Estimation Protips - NCDevCon 2014Estimation Protips - NCDevCon 2014
Estimation Protips - NCDevCon 2014Jonathon Hill
 
Keeping your IT projects on track
Keeping your IT projects on trackKeeping your IT projects on track
Keeping your IT projects on trackMichael Küsters
 
SpringOne Tour Denver - Cloud Event Driven Architectures with Spring Cloud St...
SpringOne Tour Denver - Cloud Event Driven Architectures with Spring Cloud St...SpringOne Tour Denver - Cloud Event Driven Architectures with Spring Cloud St...
SpringOne Tour Denver - Cloud Event Driven Architectures with Spring Cloud St...VMware Tanzu
 
Making Your Product Manager Productive by Clinton Wolfe
Making Your Product Manager Productive by Clinton WolfeMaking Your Product Manager Productive by Clinton Wolfe
Making Your Product Manager Productive by Clinton WolfeDevOpsDays Baltimore
 
Making Your Product Manager Productive by Clinton Wolfe
Making Your Product Manager Productive by Clinton Wolfe Making Your Product Manager Productive by Clinton Wolfe
Making Your Product Manager Productive by Clinton Wolfe DevOpsDays Baltimore
 
Agile – The New Kid in the Block?
Agile – The New Kid in the Block?Agile – The New Kid in the Block?
Agile – The New Kid in the Block?Michael Tarnowski
 
Continuous Deployment To The Cloud With Spring Cloud Pipelines @WarsawCloudNa...
Continuous Deployment To The Cloud With Spring Cloud Pipelines @WarsawCloudNa...Continuous Deployment To The Cloud With Spring Cloud Pipelines @WarsawCloudNa...
Continuous Deployment To The Cloud With Spring Cloud Pipelines @WarsawCloudNa...Marcin Grzejszczak
 
Final spiralmodel97
Final spiralmodel97Final spiralmodel97
Final spiralmodel97akshay8835
 
A Proven Software Development Process for the Non Technical Founder
A Proven Software Development Process for the Non Technical FounderA Proven Software Development Process for the Non Technical Founder
A Proven Software Development Process for the Non Technical FounderFounders Workshop
 
Managing technical debt notes
Managing technical debt notesManaging technical debt notes
Managing technical debt notesFadi Stephan
 
You wouldn't build a toast, would you
You wouldn't build a toast, would youYou wouldn't build a toast, would you
You wouldn't build a toast, would youYan Cui
 
Technical and Product Debt Management
Technical and Product Debt ManagementTechnical and Product Debt Management
Technical and Product Debt ManagementSergey Sundukovskiy
 
Why change code that works - On Technical Debt and Refactoring
Why change code that works - On Technical Debt and RefactoringWhy change code that works - On Technical Debt and Refactoring
Why change code that works - On Technical Debt and RefactoringCarsten Windler
 
Rebuilding Legacy Apps with Domain-Driven Design - Lessons learned
Rebuilding Legacy Apps with Domain-Driven Design - Lessons learnedRebuilding Legacy Apps with Domain-Driven Design - Lessons learned
Rebuilding Legacy Apps with Domain-Driven Design - Lessons learnedKacper Gunia
 
Digital project management for non project managers
Digital project management for non project managers Digital project management for non project managers
Digital project management for non project managers Claudia Sagripanti
 
Cloud Event Driven Architectures with Spring Cloud Stream 2.0 by Jakub Pilimon
Cloud Event Driven Architectures with Spring Cloud Stream 2.0 by Jakub PilimonCloud Event Driven Architectures with Spring Cloud Stream 2.0 by Jakub Pilimon
Cloud Event Driven Architectures with Spring Cloud Stream 2.0 by Jakub PilimonVMware Tanzu
 

Similar to Event-Driven Architecture Traps (20)

Cloud Event-Driven Architectures with Spring Boot and Spring Cloud
Cloud Event-Driven Architectures with Spring Boot and Spring CloudCloud Event-Driven Architectures with Spring Boot and Spring Cloud
Cloud Event-Driven Architectures with Spring Boot and Spring Cloud
 
Event-Driven Architecture Traps - Jakub Pilimon
Event-Driven Architecture Traps - Jakub PilimonEvent-Driven Architecture Traps - Jakub Pilimon
Event-Driven Architecture Traps - Jakub Pilimon
 
Estimation Protips - NCDevCon 2014
Estimation Protips - NCDevCon 2014Estimation Protips - NCDevCon 2014
Estimation Protips - NCDevCon 2014
 
Keeping your IT projects on track
Keeping your IT projects on trackKeeping your IT projects on track
Keeping your IT projects on track
 
SpringOne Tour Denver - Cloud Event Driven Architectures with Spring Cloud St...
SpringOne Tour Denver - Cloud Event Driven Architectures with Spring Cloud St...SpringOne Tour Denver - Cloud Event Driven Architectures with Spring Cloud St...
SpringOne Tour Denver - Cloud Event Driven Architectures with Spring Cloud St...
 
Estimation Protips
Estimation ProtipsEstimation Protips
Estimation Protips
 
Making Your Product Manager Productive by Clinton Wolfe
Making Your Product Manager Productive by Clinton WolfeMaking Your Product Manager Productive by Clinton Wolfe
Making Your Product Manager Productive by Clinton Wolfe
 
Making Your Product Manager Productive by Clinton Wolfe
Making Your Product Manager Productive by Clinton Wolfe Making Your Product Manager Productive by Clinton Wolfe
Making Your Product Manager Productive by Clinton Wolfe
 
Agile – The New Kid in the Block?
Agile – The New Kid in the Block?Agile – The New Kid in the Block?
Agile – The New Kid in the Block?
 
Continuous Deployment To The Cloud With Spring Cloud Pipelines @WarsawCloudNa...
Continuous Deployment To The Cloud With Spring Cloud Pipelines @WarsawCloudNa...Continuous Deployment To The Cloud With Spring Cloud Pipelines @WarsawCloudNa...
Continuous Deployment To The Cloud With Spring Cloud Pipelines @WarsawCloudNa...
 
Final spiralmodel97
Final spiralmodel97Final spiralmodel97
Final spiralmodel97
 
A Proven Software Development Process for the Non Technical Founder
A Proven Software Development Process for the Non Technical FounderA Proven Software Development Process for the Non Technical Founder
A Proven Software Development Process for the Non Technical Founder
 
Agile Methodologies
Agile MethodologiesAgile Methodologies
Agile Methodologies
 
Managing technical debt notes
Managing technical debt notesManaging technical debt notes
Managing technical debt notes
 
You wouldn't build a toast, would you
You wouldn't build a toast, would youYou wouldn't build a toast, would you
You wouldn't build a toast, would you
 
Technical and Product Debt Management
Technical and Product Debt ManagementTechnical and Product Debt Management
Technical and Product Debt Management
 
Why change code that works - On Technical Debt and Refactoring
Why change code that works - On Technical Debt and RefactoringWhy change code that works - On Technical Debt and Refactoring
Why change code that works - On Technical Debt and Refactoring
 
Rebuilding Legacy Apps with Domain-Driven Design - Lessons learned
Rebuilding Legacy Apps with Domain-Driven Design - Lessons learnedRebuilding Legacy Apps with Domain-Driven Design - Lessons learned
Rebuilding Legacy Apps with Domain-Driven Design - Lessons learned
 
Digital project management for non project managers
Digital project management for non project managers Digital project management for non project managers
Digital project management for non project managers
 
Cloud Event Driven Architectures with Spring Cloud Stream 2.0 by Jakub Pilimon
Cloud Event Driven Architectures with Spring Cloud Stream 2.0 by Jakub PilimonCloud Event Driven Architectures with Spring Cloud Stream 2.0 by Jakub Pilimon
Cloud Event Driven Architectures with Spring Cloud Stream 2.0 by Jakub Pilimon
 

More from VMware Tanzu

What AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItWhat AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItVMware Tanzu
 
Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023VMware Tanzu
 
Enhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleEnhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleVMware Tanzu
 
Spring Update | July 2023
Spring Update | July 2023Spring Update | July 2023
Spring Update | July 2023VMware Tanzu
 
Platforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductPlatforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductVMware Tanzu
 
Building Cloud Ready Apps
Building Cloud Ready AppsBuilding Cloud Ready Apps
Building Cloud Ready AppsVMware Tanzu
 
Spring Boot 3 And Beyond
Spring Boot 3 And BeyondSpring Boot 3 And Beyond
Spring Boot 3 And BeyondVMware Tanzu
 
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfSpring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfVMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023VMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023VMware Tanzu
 
tanzu_developer_connect.pptx
tanzu_developer_connect.pptxtanzu_developer_connect.pptx
tanzu_developer_connect.pptxVMware Tanzu
 
Tanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchTanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchVMware Tanzu
 
Tanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishTanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishVMware Tanzu
 
Virtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVirtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVMware Tanzu
 
Tanzu Developer Connect - French
Tanzu Developer Connect - FrenchTanzu Developer Connect - French
Tanzu Developer Connect - FrenchVMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023VMware Tanzu
 
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootSpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootVMware Tanzu
 
SpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerSpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerVMware Tanzu
 
SpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeSpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeVMware Tanzu
 
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense SolutionsSpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense SolutionsVMware Tanzu
 

More from VMware Tanzu (20)

What AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItWhat AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About It
 
Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023
 
Enhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleEnhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at Scale
 
Spring Update | July 2023
Spring Update | July 2023Spring Update | July 2023
Spring Update | July 2023
 
Platforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductPlatforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a Product
 
Building Cloud Ready Apps
Building Cloud Ready AppsBuilding Cloud Ready Apps
Building Cloud Ready Apps
 
Spring Boot 3 And Beyond
Spring Boot 3 And BeyondSpring Boot 3 And Beyond
Spring Boot 3 And Beyond
 
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfSpring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
 
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
 
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
 
tanzu_developer_connect.pptx
tanzu_developer_connect.pptxtanzu_developer_connect.pptx
tanzu_developer_connect.pptx
 
Tanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchTanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - French
 
Tanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishTanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - English
 
Virtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVirtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - English
 
Tanzu Developer Connect - French
Tanzu Developer Connect - FrenchTanzu Developer Connect - French
Tanzu Developer Connect - French
 
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
 
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootSpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
 
SpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerSpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software Engineer
 
SpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeSpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs Practice
 
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense SolutionsSpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
 

Recently uploaded

How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsYoss Cohen
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxAna-Maria Mihalceanu
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFMichael Gough
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Karmanjay Verma
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...BookNet Canada
 

Recently uploaded (20)

How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance Toolbox
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDF
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
 

Event-Driven Architecture Traps