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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Ilya Kaznacheev
September 26, 2022
Programming
0
200
Управляем состоянием распределенных систем без боли
Ilya Kaznacheev
September 26, 2022
Tweet
Share
More Decks by Ilya Kaznacheev
See All by Ilya Kaznacheev
Many Layers of Availability
dreamworm
0
76
Stateful Solutions: A Hands-On Guide to FSM in Golang
dreamworm
0
190
CQRS
dreamworm
0
150
Building a Cloud-Native PaaS
dreamworm
0
140
Distributed System State Management: When Transactions Are Long and SLA Is High
dreamworm
0
120
How To Create Saga-Free Distributed Transactions
dreamworm
0
68
Architectural decisions in building distributed systems
dreamworm
0
29
Распределенные транзакции без саг
dreamworm
0
190
Patterns of cloud scaling
dreamworm
0
130
Other Decks in Programming
See All in Programming
CSC307 Lecture 11
javiergs
PRO
0
590
go directiveを最新にしすぎないで欲しい話──あるいは、Go 1.26からgo mod initで作られるgo directiveの値が変わる話 / Go 1.26 リリースパーティ
arthur1
2
470
DevinとClaude Code、SREの現場で使い倒してみた件
karia
1
920
LangChain4jとは一味違うLangChain4j-CDI
kazumura
1
150
ふつうの Rubyist、ちいさなデバイス、大きな一年
bash0c7
0
540
Python’s True Superpower
hynek
0
200
メタプログラミングで実現する「コードを仕様にする」仕組み/nikkei-tech-talk43
nikkei_engineer_recruiting
0
160
encoding/json/v2のUnmarshalはこう変わった:内部実装で見る設計改善
kurakura0916
0
310
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
4
480
Takumiから考えるSecurity_Maturity_Model.pdf
gessy0129
1
120
Go1.26 go fixをプロダクトに適用して困ったこと
kurakura0916
0
330
CopilotKit + AG-UIを学ぶ
nearme_tech
PRO
1
130
Featured
See All Featured
WCS-LA-2024
lcolladotor
0
470
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
210
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
300
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Un-Boring Meetings
codingconduct
0
220
The browser strikes back
jonoalderson
0
760
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Crafting Experiences
bethany
1
75
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
190
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.8k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
130
Designing for Timeless Needs
cassininazir
0
150
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