Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Управляем состоянием распределенных систем без ...
Search
Ilya Kaznacheev
September 26, 2022
Programming
210
0
Share
Управляем состоянием распределенных систем без боли
Ilya Kaznacheev
September 26, 2022
More Decks by Ilya Kaznacheev
See All by Ilya Kaznacheev
Road to four nines
dreamworm
0
20
Many Layers of Availability
dreamworm
0
94
Stateful Solutions: A Hands-On Guide to FSM in Golang
dreamworm
0
210
CQRS
dreamworm
0
180
Building a Cloud-Native PaaS
dreamworm
0
160
Distributed System State Management: When Transactions Are Long and SLA Is High
dreamworm
0
140
How To Create Saga-Free Distributed Transactions
dreamworm
0
79
Architectural decisions in building distributed systems
dreamworm
0
39
Распределенные транзакции без саг
dreamworm
0
210
Other Decks in Programming
See All in Programming
1人1案件のプロダクトエンジニア時代に、"プロセス監督"としてチャレンジしたこと
non0113
0
350
Swiftのレキシカルスコープ管理
kntkymt
0
200
プロパティの順序で型推論が壊れる!? TypeScript6.0の修正からContext-Sensitivityの仕組みを追う
bicstone
2
1.3k
「エンジニアインターン、どうやって取った?」準備のリアルを語るLT会 Progate BAR
akiomatic
0
100
CSC307 Lecture 17
javiergs
PRO
0
290
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
0
150
AI駆動開発で崩れていくコードベースを立て直す
kyoko_nr_nr
1
400
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
190
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3k
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
1.8k
色即是空、空即是色、データサイエンス
kamoneggi
1
210
CLIであることを活かしたGitHub Copilot CLI活用術 / GitHub Copilot CLI Pro Tips & Tricks
nao_mk2
1
1.1k
Featured
See All Featured
Heart Work Chapter 1 - Part 1
lfama
PRO
7
36k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
190
Git: the NoSQL Database
bkeepers
PRO
432
67k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Six Lessons from altMBA
skipperchong
29
4.3k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
430
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
420
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
930
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Making Projects Easy
brettharned
120
6.7k
Transcript
Управляем состоянием распределенных систем без боли Илья Казначеев
Илья Казначеев Tech Lead @ MTS Cloud Consulting Cloud Architect,
Основатель Golang Voronezh GDE on Cloud, GCP PCA, к.т.н. 2
как управлять распределенным состоянием? 3
как управлять распределенным состоянием? как построить K8s-as-a-Service? 4
roadmap 5 5
Чего мы хотели • SLA 99,99% (доступность + операции над
кластером) • быстрая реакция на инциденты • быстрая доставка новых фич • атомарность и консистентность в распределенных операциях • читабельный и поддерживаемый код 6
7
8
9
10
11
12
roadmap 13 13
roadmap 14 14
Domain Driven Design 15
16
17
18
roadmap 19 19
roadmap 20 20
21
22
23
24
Finite State Machine 25
26
27
28
29
30
31
32
33
34
35
36
roadmap 37 37
roadmap 38 38
обработка событий в рамках домена 39
40
41
42
43
44
45
46
обработка ошибки 47
48
49
50
roadmap 51 51
roadmap 52 52
обработка событий между доменами 53
54
55
56
57
58
59
60
61
roadmap 62 62
roadmap 63 63
распределенные транзакции 64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
roadmap 82 82
roadmap 83 83
CQRS 84
85
86
87
88
89
90
91
92
roadmap 93 93
roadmap 94 94
консистентность данных 95
96
97
98
outbox pattern 99
100
101
roadmap 102 102
roadmap 103 103
observability 104
105
106
roadmap 107 107
roadmap 108 108
Итоги • процессы отказоустойчивые • данные консистентные • выполнили SLA
109
Итоги • код читабельный • сложная логика понятна • процесс
целиком виден в коде • фичи добавлять быстро • тесты писать несложно 110
Итоги • скорость локализации ошибок сократилась на 1-2 порядка (до
минут) • отладка упростилась • обработка заявок ускорилась • разработчики довольны • тестировщики довольны • клиенты довольны 111
спасибо 112
Илья Казначеев
[email protected]
www.kaznacheev.me t.me/cloud_flight t.me/kaznacheev_feed 113