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
Reactive Microservices Architecture
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Go Tanaka
September 09, 2016
Technology
290
0
Share
Reactive Microservices Architecture
Go Tanaka
September 09, 2016
More Decks by Go Tanaka
See All by Go Tanaka
TAKT & TeamKit
tan_go238
0
36
なぜAIは チーム開発を 速くしないのか
tan_go238
9
4.2k
事業を理解するために勉強したこと
tan_go238
0
1.4k
RDRAと業務と私
tan_go238
6
5.4k
エンジニアのための情報設計入門
tan_go238
10
8k
JVM in Action
tan_go238
1
710
Ordinary Object Pointer in JVM
tan_go238
5
6.1k
フロントエンドの基礎知識
tan_go238
28
10k
たぶん便利なパターンマッチ
tan_go238
0
340
Other Decks in Technology
See All in Technology
サプライチェーンセキュリティの空白地帯 - 信頼できる”依存性”の未来を考える
rung
PRO
2
530
PHP と TypeScript の型システム比較:AI 時代の「型」は誰のためにあるのか? #frontend_phpcon_do / frontend_phpcon_do_2026
shogogg
1
190
はじめてのDatadog
kairim0
0
240
20260528_生成AIを専属DSに_Howの次にすべきことを考える
doradora09
PRO
0
270
string地獄を脱出する
sansantech
PRO
1
110
Spring Boot における AOT Cache 活用テクニックと 起動時間改善事例
ntt_dsol_java
0
180
AI時代から振り返るTerraform drift運用の歴史 / AI Age Reflections on the History of Terraform Drift Operations
aeonpeople
2
620
速さだけじゃない! VoidZero ツールが移行先に選ばれる理由
mizdra
PRO
6
700
ポスター発表&デモと総括 / Poster Presentations & Demonstrations and Summary
ks91
PRO
0
180
最低限これだけ押さえれ大丈夫_Claude Enterprise/Team企業展開ガバナンス入門
tkikuchi
1
570
Spring AI × MCP 入門〜AIエージェントへのツール公開、境界設計から始める最小構成 〜
yuyamiyamoto
0
190
『家族アルバム みてね』における インシデント対応との向き合い方 / Approach incident response in Family Album
kohbis
2
280
Featured
See All Featured
How to Talk to Developers About Accessibility
jct
2
210
Paper Plane (Part 1)
katiecoart
PRO
0
8.1k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.2k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
830
Chasing Engaging Ingredients in Design
codingconduct
0
200
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
120
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
Making the Leap to Tech Lead
cromwellryan
135
9.9k
Building AI with AI
inesmontani
PRO
1
1k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
550
Balancing Empowerment & Direction
lara
6
1.1k
Why Our Code Smells
bkeepers
PRO
340
58k
Transcript
Reactive Microservices Architecture @tan_go238
ࠓ͢͜ͱ
ͬ͘͘͢͟͝Γ͠·͢
ϚΠΫϩαʔϏεͷίϯηϓτ • খͯ͘͞ • ಠཱͨ͠αʔϏεͰ • ͦΕͧΕ͕ࣗͷυϝΠϯͷσʔλΛ࣋ͪ • ಠཱͯ͠ •
͞Ε͍ͯͯ • εέʔϥϒϧ • ͦͯ͠ରোੑ͕͋Δ
Monolith https://goo.gl/keQyrL
SOA Microservices Reactive Microservices ↓ ↓
Reactive Microserviceͱʁ
Reactive Manifest • ଈԠੑ • ରোੑ • ྗੑ • ϝοηʔδۦಈ
http://www.reactivemanifesto.org/ja
Reactive Microservice (Failure isolation) Bulkheading (SPOFΛͭ͘Βͳ͍)
Reactive Microservice (Own your state, Exclusively)
Reactive Microservice (Event Sourcing, CQRS)
Reactive Microservice (Asynchronous Message-Passing)
Reactive Microserviceͱʁ • ಠཱ͍ͯ͠Δ (DockerΈ͍ͨͳԾԽͱΈ߹ΘͤͯߋʹޮԽ) • ରোੑ͕͋Δ • ඇಉظϝοηʔδϯά ͍͠ɺམͪͯଞͷӨڹ͕গͳ͘ɺ
εέʔϥϒϧʹͰ͖ͯΔͷͰ͙͢ճ෮͢Δ
࣮ࡍͲ͏ͬͯ࡞Δͷʁ
Microservices Come in Systems (Service Discovery) • ͓ޓ͍ͷαʔϏεͷΞυϨεΛ͍ͬͯΔඞཁ͕͋Δ • ͦͷΛݞΘΓ͢Δͷ͕
Service Discovery • CAPఆཧͷ CP-Based ͱ AP-Based ͕͋Δ • CP-Based … Zookeeper, etcd • AP-Based … Lightbend Reactive Platform, eureka, Serf
Microservices Come in Systems (API Gateway) ΫϥΠΞϯτ͔ΒͷϦΫΤετΛड͚औͬͯɺਖ਼͍͠αʔϏε͢ ྫ) Netflix API,
Amazon API Gateway
Microservices Come in Systems (Managing Communication Patterns) • ίϛϡχέʔγϣϯύλʔϯෳࡶʹͳͬͯ͘Δ •
Publish-Subscribe ύλʔϯΛ͏ • SubscriberҎԼͷϥΠϒϥϦ͔ΒσʔλΛऔಘ͢Δ • Kafka, Amazon Kinesis, Cassandra, Riak • ·ͩෆे • σʔλετϦʔϜ … Akka Stream, Apache Camel
Microservices Come in Systems (Back-pressure) • Publish-Subscribe ͷΑ͏ͳύλʔϯͰ Pub ͷॲཧ͕
͗ͯ͢ Sub ͷॲཧ͕͍͔ͭͳ͍͜ͱ͕͋Δ • Subscriber͕͕ࣗॲཧͰ͖ΔྔΛPublisherʹϦΫΤε τΛૹΔ͜ͱͰແବͳ͘Subscriber͕ॲཧͰ͖ΔྔΛॲ ཧ͢ΔΈ • Akka Stream, RxJava, Spark Streaming, Cassandra drivers
Microservices Come in Systems (Circuit Breaker pattern) • ϦϞʔτΞΫηεͷޭʗࣦഊΛΧϯτ͠ɺ Τϥʔ
(failure rate) ͕ᮢΛ͑ͨͱ͖ʹࣗಈతʹΞΫη εΛःஅ͢ΔΈ • Netflix Hystrix, Akka (akka.pattern.CircuitBreaker)
Microservices Come in Systems (Event-Driven Architecture) • σʔλͷมߋ͙͢ଞͷαʔϏε͔Βར༻Ͱ͖ͳ͍ͱ͍͚ͳ͍ • Event
Sourcing, CQRS • Command … ෭࡞༻͕͋Δૢ࡞ • Event … Կ͔͕ىͬͨ͜ͱ͍͏ϩά (ࣄ࣮) • Event Logging and Event Streaming Product • Riak, RedBull Eventuate
Microservices Come in Systems (SAGA pattern) • ࢄγεςϜͰͷτϥϯβΫγϣϯ (Process Manager)
Summery • Reactive Microservice ʹ͢Δʹ • ҎԼͷಛੑʹݻࣥ͢Δ • ͢Δ͜ͱ •
̍αʔϏεʹ͖ͭ̍ͭͷͷΈ • ഉଞతͳঢ়ଶʹ͢Δ • ඇಉظϝοηʔδύογϯά • ػಈੑ͕͋Δ (Mobility) • ߋʹҎԼͷΑ͏ͳಛੑΛซͤ࣋ͭ • αʔϏεಉ࢜ڠௐͯ͠ಈ࡞͢Δ • ͦͷαʔϏε͚ͩͰ݁͢Δ
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ