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
0
81
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
Tweet
Share
More Decks by Benjamin Wilms
See All by Benjamin Wilms
Chaos Engineering @ Spring I/O 2019 Barcelona
mrbw
1
470
Chaos Engineering - W-JAX 2018
mrbw
0
310
Chaos Engineering - AWS Community Days 2018
mrbw
0
800
Chaos Engineering @ JUG Bonn
mrbw
0
160
Chaos Engineering @ Microservices Meetup Berlin
mrbw
0
130
Spring Cloud Netf
mrbw
1
200
Hysterie in verteilten Systemen - Hystrix im Einsatz
mrbw
0
350
Resilience mit Hystrix: Fehlertoleranz statt Hochverfügbarkeit
mrbw
0
240
Hystrix Warstories
mrbw
0
57
Other Decks in Technology
See All in Technology
Digital omtanke på Internetdagarna 2025
axbom
PRO
0
120
クラスタ統合リアーキテクチャ全貌~1,000万ユーザーのウェルネスSaaSを再設計~
hacomono
PRO
0
190
社内外から"使ってもらえる"データ基盤を支えるアーキテクチャの秘訣/登壇資料(飯塚 大地・高橋 一貴)
hacobu
PRO
0
7.4k
レガシーで硬直したテーブル設計から変更容易で柔軟なテーブル設計にする
red_frasco
4
600
【ASW21-02】STAMP/CAST分析における生成AIの支援 ~羽田空港航空機衝突事故を題材として (Support of Generative AI in STAMP/CAST Analysis - A Case Study Based on the Haneda Airport Aircraft Accident -)
hianraku9498
0
130
ブラウザ拡張のセキュリティの話 / Browser Extension Security
flatt_security
0
130
マルチドライブアーキテクチャ: 複数の駆動力でプロダクトを前進させる
knih
0
11k
スタートアップの事業成長を支えるアーキテクチャとエンジニアリング
doragt
1
8.2k
ECS組み込みのBlue/Greenデプロイを動かしてELB側の動きを観察してみる
yuki_ink
3
420
重厚長大企業で、顧客価値をスケールさせるためのプロダクトづくりとプロダクト開発チームづくりの裏側 / Developers X Summit 2025
mongolyy
0
200
ABEJA FIRST GUIDE for Software Engineers
abeja
0
3.2k
adk-samples に学ぶデータ分析 LLM エージェント開発
na0
3
700
Featured
See All Featured
Facilitating Awesome Meetings
lara
57
6.6k
Docker and Python
trallard
46
3.7k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
GraphQLとの向き合い方2022年版
quramy
49
14k
The Language of Interfaces
destraynor
162
25k
Statistics for Hackers
jakevdp
799
230k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.4k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
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