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
Hystrix @ Vaadin Meetup Düsseldorf
Search
Benjamin Wilms
September 12, 2016
Technology
93
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Hystrix @ Vaadin Meetup Düsseldorf
Folien zu meinem Talk auf dem 2. Vaadin Meetup in Düsseldorf vom 8.9.2016
Benjamin Wilms
September 12, 2016
More Decks by Benjamin Wilms
See All by Benjamin Wilms
Chaos Engineering @ Spring I/O 2019 Barcelona
mrbw
1
510
Chaos Engineering - W-JAX 2018
mrbw
0
320
Chaos Engineering - AWS Community Days 2018
mrbw
0
860
Chaos Engineering @ JUG Bonn
mrbw
0
180
Chaos Engineering @ Microservices Meetup Berlin
mrbw
0
150
Spring Cloud Netf
mrbw
1
210
Hysterie in verteilten Systemen - Hystrix im Einsatz
mrbw
0
360
Resilience mit Hystrix: Fehlertoleranz statt Hochverfügbarkeit
mrbw
0
240
Hystrix Warstories
mrbw
0
58
Other Decks in Technology
See All in Technology
プロダクト開発から業務改善コンサルまで。事業全体へ「染み出す」ことで広がるエンジニアの可能性
ham0215
0
130
AIのReact習熟度を測る
uhyo
2
620
Android の公式 Skill / Android skills
yanzm
0
150
LLMにもCAP定理があるという話
harukasakihara
0
390
フィジカル版Github Onshapeの紹介
shiba_8ro
0
270
日本 Fintech 未来予測レポート 2027〜2028年(手動編集版)
8maki
0
2.4k
FinOps × AIエージェントで実現する コストインシデントの自動調査
oasis1994liveforever
0
150
2026 TECHFRESH 畢業分享會 - AI-Native 重塑軟體工程與虛擬講師
line_developers_tw
PRO
0
1.2k
AIソロプレナー時代に2ヶ月で20人増員した事業創造会社の開発組織の話
miyatakoji
0
680
なぜ Platform Engineering の土台に Kubernetes を選ぶのか
r4ynode
2
650
自律型AIエージェントは何を破壊するのか
kojira
0
160
手塩にかけりゃいいってもんじゃない
ming_ayami
0
600
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Designing Experiences People Love
moore
143
24k
My Coaching Mixtape
mlcsv
0
150
YesSQL, Process and Tooling at Scale
rocio
174
15k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
The Cost Of JavaScript in 2023
addyosmani
55
10k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.5k
New Earth Scene 8
popppiees
3
2.3k
First, design no harm
axbom
PRO
2
1.2k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
430
Transcript
Hystrix_ Benjamin Wilms
2 Agenda
3 About me Benjamin Wilms www.codecentric.de blog.codecentric.de @MrBWilms IT-Consultant
4 Hystrix Introduction
5
6 99,99 %
7 Bei 30 abhängigen µServices: 99,7 %
8 2 Stunden und 15 Minuten Downtime pro Monat
9 Welche Features bietet Hystrix?
10
11 8 Resilience Patterns
12 Pattern • Timeout (Hystrix) • Bulkheads (Hystrix) • Circuit
Breaker (Hystrix) • Steady State • Fail Fast • Handshaking • Test harness • Decoupling middleware
13 Real World
14 24/7 Kundenportal Flickr: Jessica Spengler
15 geplante Ausfallzeiten
16 ungeplante Ausfallzeiten
17 Legacy Backend via Hystrix
18 Demo-Anwendung
19 Sender & Receiver Transport GmbH
20 Demo-Architektur
21 Demo-Architektur
22 Hystrix & Archaius
23 Hystrix & Archaius • dynamic & typed • thread
safe • polling framework • callback mechanism • dynamic configuration
24 Hystrix & Archaius • AWS Dynamo DB • Apache
ZooKeeper • CoreOS etcd
25 CoreOS etcd • Distributed key value store • REST
API • Cluster ready
26 Architektur
27 Archaius & etcd // Config fallback (config.properties) and Etcd
configuration compositeConfig = new ConcurrentCompositeConfiguration(); ClasspathPropertiesConfiguration.initialize(); // File based config // CoreOS Etcd service configuration etcdConfigSource = new EtcdConfigurationSource(etcd, "/hystrix/"); etcdConfig = new DynamicWatchedConfiguration(etcdConfigSource); compositeConfig.addConfiguration(etcdConfig,"etcd dynamic override config"); ConfigurationManager.install(compositeConfig);
28 Chaos Monkey
29 Chaos Monkey
30 Simian Army
31 Archaius & etcd Timeouts Exceptions
32 Archaius & etcd curl -L -X PUT http://etcd:2379/v2/keys/hystrix/chaos.monkey.active -d
value=true
33 Demo Hystrix Configuration via etcd
34 Spring Cloud Netflix & Spring Boot @SpringBootApplication @EnableCircuitBreaker @EnableHystrixDashboard
@Import(ArchaiusConfiguration.class) public class TransportServiceAppl { public static void main(String[] args) { SpringApplication.run(TransportServiceApp.class, args); } }
35 Demo Zusammenfassung
36 Zusammenfassung • Chaos Monkey aktiviert • Remote Services konfiguriert
• Hystrix Timeouts gesetzt • Hystrix Circuit Breaker open/close • Hystrix Fallbacks deaktiviert
37 GitHub Demo-Projekt unter: github.com/MrBW/hystrix-warstories-applications
38 Danke. Fragen?
39