Suche senden
Hochladen
CQRS
•
1 gefällt mir
•
504 views
L
lukerandall
Folgen
A quick look at CQRS and event sourcing, and how they influence design decisions.
Weniger lesen
Mehr lesen
Technologie
Melden
Teilen
Melden
Teilen
1 von 73
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
香港六合彩
香港六合彩
wejia
Scmad Chapter09
Scmad Chapter09
Marcel Caraciolo
How... Do you know?
How... Do you know?
Aleksandra Gavrilovska
Billviola
Billviola
sheone
Lecture 17
Lecture 17
Debasish Pratihari
Presentación azalpen. Tráfico web y conversión.
Presentación azalpen. Tráfico web y conversión.
Ibon Orrantia
imagenes
imagenes
ednamon
Have You Ever Noticed
Have You Ever Noticed
Maher R. Boktor
Empfohlen
香港六合彩
香港六合彩
wejia
Scmad Chapter09
Scmad Chapter09
Marcel Caraciolo
How... Do you know?
How... Do you know?
Aleksandra Gavrilovska
Billviola
Billviola
sheone
Lecture 17
Lecture 17
Debasish Pratihari
Presentación azalpen. Tráfico web y conversión.
Presentación azalpen. Tráfico web y conversión.
Ibon Orrantia
imagenes
imagenes
ednamon
Have You Ever Noticed
Have You Ever Noticed
Maher R. Boktor
Editing
Editing
Rhonda Bracey
What causes Diarrhea IEHA 2008
What causes Diarrhea IEHA 2008
Steve Lipton
Best practices for_scaling_java_applications_with_distributed_caching
Best practices for_scaling_java_applications_with_distributed_caching
yamingd
Learning Pool's Sam Barbee on 'E-learning to train social workers'
Learning Pool's Sam Barbee on 'E-learning to train social workers'
Paul McElvaney
Lecture 10
Lecture 10
Debasish Pratihari
Communication
Communication
yamingd
Javaday 2010: Facebook Java Framework
Javaday 2010: Facebook Java Framework
Matteo Baccan
Reviewing Screen-Based Content
Reviewing Screen-Based Content
Rhonda Bracey
Social mediacongres
Social mediacongres
Sjef Kerkhofs
Mobile Learning And Pd As
Mobile Learning And Pd As
szurlnick
相爱如此美丽
相爱如此美丽
waitingmyself
Lezing mainpress webversie
Lezing mainpress webversie
Sjef Kerkhofs
06.10.07 Children
06.10.07 Children
Jubrac Jacui
NEHA AEC 2008 Small Wares: How to Tell A Story
NEHA AEC 2008 Small Wares: How to Tell A Story
Steve Lipton
小企业金融业务品牌推广方案 Push(v4.0)
小企业金融业务品牌推广方案 Push(v4.0)
Push ,Beijing
香港六合彩
香港六合彩
wejia
Chritmas
Chritmas
guest1dbfb6
Beer&Tech: Tech Documentation - cod == doc
Beer&Tech: Tech Documentation - cod == doc
Gilles Legoux
Event Sourcing & CQRS: Down the rabbit hole
Event Sourcing & CQRS: Down the rabbit hole
Julian May
Patterns and Practices for Event Design With Adam Bellemare | Current 2022
Patterns and Practices for Event Design With Adam Bellemare | Current 2022
HostedbyConfluent
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
confluent
Developing functional domain models with event sourcing (oakjug, sfscala)
Developing functional domain models with event sourcing (oakjug, sfscala)
Chris Richardson
Weitere ähnliche Inhalte
Andere mochten auch
Editing
Editing
Rhonda Bracey
What causes Diarrhea IEHA 2008
What causes Diarrhea IEHA 2008
Steve Lipton
Best practices for_scaling_java_applications_with_distributed_caching
Best practices for_scaling_java_applications_with_distributed_caching
yamingd
Learning Pool's Sam Barbee on 'E-learning to train social workers'
Learning Pool's Sam Barbee on 'E-learning to train social workers'
Paul McElvaney
Lecture 10
Lecture 10
Debasish Pratihari
Communication
Communication
yamingd
Javaday 2010: Facebook Java Framework
Javaday 2010: Facebook Java Framework
Matteo Baccan
Reviewing Screen-Based Content
Reviewing Screen-Based Content
Rhonda Bracey
Social mediacongres
Social mediacongres
Sjef Kerkhofs
Mobile Learning And Pd As
Mobile Learning And Pd As
szurlnick
相爱如此美丽
相爱如此美丽
waitingmyself
Lezing mainpress webversie
Lezing mainpress webversie
Sjef Kerkhofs
06.10.07 Children
06.10.07 Children
Jubrac Jacui
NEHA AEC 2008 Small Wares: How to Tell A Story
NEHA AEC 2008 Small Wares: How to Tell A Story
Steve Lipton
小企业金融业务品牌推广方案 Push(v4.0)
小企业金融业务品牌推广方案 Push(v4.0)
Push ,Beijing
香港六合彩
香港六合彩
wejia
Chritmas
Chritmas
guest1dbfb6
Andere mochten auch
(17)
Editing
Editing
What causes Diarrhea IEHA 2008
What causes Diarrhea IEHA 2008
Best practices for_scaling_java_applications_with_distributed_caching
Best practices for_scaling_java_applications_with_distributed_caching
Learning Pool's Sam Barbee on 'E-learning to train social workers'
Learning Pool's Sam Barbee on 'E-learning to train social workers'
Lecture 10
Lecture 10
Communication
Communication
Javaday 2010: Facebook Java Framework
Javaday 2010: Facebook Java Framework
Reviewing Screen-Based Content
Reviewing Screen-Based Content
Social mediacongres
Social mediacongres
Mobile Learning And Pd As
Mobile Learning And Pd As
相爱如此美丽
相爱如此美丽
Lezing mainpress webversie
Lezing mainpress webversie
06.10.07 Children
06.10.07 Children
NEHA AEC 2008 Small Wares: How to Tell A Story
NEHA AEC 2008 Small Wares: How to Tell A Story
小企业金融业务品牌推广方案 Push(v4.0)
小企业金融业务品牌推广方案 Push(v4.0)
香港六合彩
香港六合彩
Chritmas
Chritmas
Ähnlich wie CQRS
Beer&Tech: Tech Documentation - cod == doc
Beer&Tech: Tech Documentation - cod == doc
Gilles Legoux
Event Sourcing & CQRS: Down the rabbit hole
Event Sourcing & CQRS: Down the rabbit hole
Julian May
Patterns and Practices for Event Design With Adam Bellemare | Current 2022
Patterns and Practices for Event Design With Adam Bellemare | Current 2022
HostedbyConfluent
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
confluent
Developing functional domain models with event sourcing (oakjug, sfscala)
Developing functional domain models with event sourcing (oakjug, sfscala)
Chris Richardson
Event Sourcing, Stream Processing and Serverless (Ben Stopford, Confluent) K...
Event Sourcing, Stream Processing and Serverless (Ben Stopford, Confluent) K...
confluent
Agile drupal tips - leverage JIRA for good
Agile drupal tips - leverage JIRA for good
Chris Urban
You Put *What* in Your Stream?! Patterns and Practices for Event Design with ...
You Put *What* in Your Stream?! Patterns and Practices for Event Design with ...
HostedbyConfluent
DDD meets CQRS and event sourcing
DDD meets CQRS and event sourcing
Gottfried Szing
Embrace NoSQL and Eventual Consistency with Ripple
Embrace NoSQL and Eventual Consistency with Ripple
Sean Cribbs
Cqrs and event sourcing in azure
Cqrs and event sourcing in azure
Sergey Seletsky
Data Visualization Strategies & Open Source Tools
Data Visualization Strategies & Open Source Tools
Phase2
Ähnlich wie CQRS
(12)
Beer&Tech: Tech Documentation - cod == doc
Beer&Tech: Tech Documentation - cod == doc
Event Sourcing & CQRS: Down the rabbit hole
Event Sourcing & CQRS: Down the rabbit hole
Patterns and Practices for Event Design With Adam Bellemare | Current 2022
Patterns and Practices for Event Design With Adam Bellemare | Current 2022
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Developing functional domain models with event sourcing (oakjug, sfscala)
Developing functional domain models with event sourcing (oakjug, sfscala)
Event Sourcing, Stream Processing and Serverless (Ben Stopford, Confluent) K...
Event Sourcing, Stream Processing and Serverless (Ben Stopford, Confluent) K...
Agile drupal tips - leverage JIRA for good
Agile drupal tips - leverage JIRA for good
You Put *What* in Your Stream?! Patterns and Practices for Event Design with ...
You Put *What* in Your Stream?! Patterns and Practices for Event Design with ...
DDD meets CQRS and event sourcing
DDD meets CQRS and event sourcing
Embrace NoSQL and Eventual Consistency with Ripple
Embrace NoSQL and Eventual Consistency with Ripple
Cqrs and event sourcing in azure
Cqrs and event sourcing in azure
Data Visualization Strategies & Open Source Tools
Data Visualization Strategies & Open Source Tools
Kürzlich hochgeladen
Architecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Martijn de Jong
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
rafiqahmad00786416
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
The Digital Insurer
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
MIND CTI
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
The Digital Insurer
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
Overkill Security
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
Product Anonymous
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Zilliz
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
ThousandEyes
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
Nanddeep Nachan
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
Zilliz
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
sudhanshuwaghmare1
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
The Digital Insurer
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
Sandro Moreira
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
apidays
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Jago de Vreede
Kürzlich hochgeladen
(20)
Architecting Cloud Native Applications
Architecting Cloud Native Applications
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
CQRS
1.
* CQRS and friends
2.
me @luke_randall github.com/
3.
“A bad design
with “ a test suite is still a bad design Rich Hickey
4.
design patterns
5.
hy W design patterns ?
6.
patterns
7.
vocabulary
8.
shared understanding
9.
hardest of being a
dev ?
10.
tools for managing complexity
11.
value
12.
value immutable dat
13.
identity
14.
identity values over time
15.
state
16.
state snapshot in time
17.
identity ≠ state
18.
objects conflate ! identity & state
19.
CQRS
20.
command
21.
command query
22.
command query responsibility
23.
command query responsibility segregation
24.
cf. command query separation
25.
command ≠ query
26.
vs. crud
27.
query (read) side simple immutable objects
28.
command (write) side simpler domain objects
29.
command (write) side tighter domain
objects
30.
command (write) side richer domain
31.
CQRS benefits
32.
CAP CA vs AP
33.
event sourcing
34.
event sourcing is not
CQRS
35.
identity value & state
36.
state = snapshot in time = sum
of events !
37.
event sourcing
38.
store all the events
39.
DDD
40.
Add A to cart Add B to cart Remove B from
cart Add C to cart Capture order address
41.
Consumer projects events into data
42.
Add A to cart A Add B to cart Remove B from
cart Add C to cart Capture order address
43.
Add A to cart Add B to cart A B Remove B from
cart Add C to cart Capture order address
44.
Add A to cart Add B to cart Remove B from
cart A Add C to cart Capture order address
45.
Add A to cart Add B to cart Remove B from
cart Add C to cart A C Capture order address
46.
Add A to cart Add B to cart Remove B from
cart Add C to cart Capture order address A C
47.
idea project data form(s) matching requirements
48.
project data items removed at
checkout
49.
project data added then removed
often
50.
project data age of
cart items
51.
project data other examples
52.
less complexity simpler models
53.
flexibility many simpler schemas
54.
scalability append only
55.
scalability append only
56.
flexibility no migrating schemas
57.
millions of events snapshots
58.
commands vs events
59.
testing commands play event
log
60.
testing commands can never
be in an invalid state
61.
testing commands expectations in terms
of events
62.
given a list of
events when I run a command expect an event
63.
understandable tests for nondevelopers
64.
eventual consistency must be
dealt with
65.
benefits
66.
benefits of a complete
history
67.
benefits of a complete
history of everything
68.
benefits of a complete
history of everything ever
69.
disadvantages/gotchas consistency mental model
70.
don’t use it
for cruddy apps simple stuff your entire app
71.
DDD bounded contexts
72.
do consider it where
it fits
73.
“ “ Seek simplicity, and distrust
it. Alfred North Whitehead
Jetzt herunterladen