Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Neos Conference 2021: Event Sourced Content Rep...
Search
Sebastian Kurfürst
September 22, 2021
Technology
76
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Neos Conference 2021: Event Sourced Content Repository - the current status
Sebastian Kurfürst
September 22, 2021
More Decks by Sebastian Kurfürst
See All by Sebastian Kurfürst
2026_10_PHPDD_SpeedIsNotVelocity_AI_Complexity_OurRoleAsDevs.pdf
skurfuerst
0
0
How To Write Unmaintainable Code - PHPDD 2024
skurfuerst
0
140
How To Write Unmaintainable Code
skurfuerst
0
130
PHPDD23: Practical Debugging and Performance Profiling
skurfuerst
0
110
Neos Con 2023: Migrating a Project to Neos 9
skurfuerst
0
63
Neos Con 2022: The New Content Repository
skurfuerst
0
77
2020: Sandstorm Technology Radar
skurfuerst
0
64
Neos Conference 2020: Event Sourced Content Repository - the current status
skurfuerst
0
44
Plone-Tagung Dresden 2020 - Patterns und Best Practices für die Entwicklung erweiterbarer und leistungsstarker React SPAs am Beispiel der Neos CMS-Benutzeroberfläche
skurfuerst
1
260
Other Decks in Technology
See All in Technology
20260930_Gemma4_Hands-on
tsho
0
230
[AWS 秋のクラウドオペレーション祭り 2026]AWS DevOps Agentで変わるリリースと運用対応 ~リリース管理機能と Directed actions のご紹介~
furuton
3
950
並行性の問題を防げ!実践トランザクション入門
occhi
0
280
カンファレンスに参加した後の浮遊感とセルフケア
pauli
0
310
1万名の社員が使う認証基盤で どう信頼性を担保するか?
kairim0
0
210
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
17
120k
AgentCoreで実践するハーネスエンジニアリング
yakumo
1
280
Claude起点の仕様駆動開発
tanakaseiya
0
390
AI駆動開発、viviONの1年 ── うまくいったこと・いかなかったこと
vivion
0
260
AI Made Us Faster at Solving the Wrong Problems
marceloancelmo
0
170
データ品質を壊しながらSnowflakeのAIに分析させてみた
kawanago
0
520
予測不能な実行エージェントを安全にサクッと試せるサンドボックス環境の話
sansantech
PRO
0
120
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
234
19k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
The Spectacular Lies of Maps
axbom
PRO
1
1.1k
ラッコキーワード サービス紹介資料
rakko
1
5.2M
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
4
1.2k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
320
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
エンジニアに許された特別な時間の終わり
watany
109
250k
Done Done
chrislema
187
17k
A Soul's Torment
seathinner
8
3.7k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
420
Transcript
The Event Sourced Content Repository: The Current Status
Introduction
Content Repository Asset Storage Fusion Flow Framework Neos Neos UI
Event Store Content Graph Commands Read API Write API Doctrine
DBAL
It's a big change behind the scenes.
Content Repository Asset Storage Fusion Flow Framework Neos Neos UI
Why are we doing the rewrite?
Model modify read classical Database Architecture Database
update projections append events Event Sourced Architecture Events "modify" read*
Event Store e1 e1 Node properties were updated e2 Node was created e3 Node properties were updated e4 Workspace was created
"Model", e.g. with Doctrine ORM update projection read the "model"
Projections DB Tables
Projections can be rebuilt DB Tables Empty DB Tables apply
event 1 DB Tables apply event 2 apply event 3 apply event 4 apply event 1000
write side read side (projections) Event store (DB Table) Content
Graph Commands Events Routing …
We know what has happened.
basis for Proper History and Undo
Editing Noti fi cations
Synchronization
already fi ve years in the making
December 2016: First Workshop
September 2017: ES CR Workshop Kiel
March 2018: ES CR Workshop Dresden
May 2018: Neos Conference Hamburg
May 2019: Neos Conference Dresden
May 2020: Neos Conference Online
What did we do since last year?
We want to use it for real. Node Type Changes
Automatically adjustable node:repair -> Structure Adjustments Node Type Changes Manually adjustable Node migrations Bugs Unplanned! Integrity Violation Detection
None
None
my personal brain nut 4 hours of coding 1 hour
of thinking 1 hour of discussing new insights
my personal brain nut 1 hour of coding 2 hours
of thinking 4 hours of discussing new insights
Things happened Smaller Features Event Sourced Routing Performance / Postgres
Support (WIP) Node Accessors (WIP)
Smaller Features Value Object Support in Properties Customizable Property Serializers
Property Scopes Access Control Support (WIP)
Property Scopes Product DE Product EN SKU, Price Across all
(or some) dimensions
Things happened Smaller Features Event Sourced Routing Performance / Postgres
Support (WIP) Node Accessors (WIP)
Things happened Smaller Features Event Sourced Routing Performance / Postgres
Support (WIP) Node Accessors (WIP)
Excourse: The Content Graph 2022 Node (Title: Next Year) Homepage
Node (Title: NeosCon) CS: live CS: user-sebastian
Excourse: The Content Graph 2022 Node (Title: Next Year) Homepage
Node (Title: NeosCon) CS: live CS: user-sebastian 2022 Node (Title: Next Year’s Con)
Excourse: The Content Graph 2022 Node (Title: Next Year) Homepage
Node (Title: NeosCon) CS: live DSP: EN CS: user-sebastian DSP: EN DE
Excourse: The Content Graph 2022 Node (Title: Next Year) Homepage
Node (Title: NeosCon) CS: live DSP: EN CS: user-sebastian DSP: EN DE 2022 Node (Title: Next Year’s Con)
None
Things happened Smaller Features Event Sourced Routing Performance / Postgres
Support (WIP) Node Accessors
Node Traversal Part Data Access Part
Node Traversal Part Data Access Part Node Accessor
Subgraph Node Accessor Content Subgraph Neos UI Menu Rendering Fusion
Outside API Storage API
Virtual Node Accessor Content Subgraph Neos UI Menu Rendering Fusion
Subgraph Node Accessor Virtual Node implementation WIP!
None
Roadmap
None
Webinar / QA Session / Deep Dive 21.05.2021 09:30 -
12:00 #project-cr-rewrite
None
None