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
Monolithic Architecture is Dead
Search
potato2003
August 29, 2014
Technology
4
780
Monolithic Architecture is Dead
社内 TeckTalk 資料 - Microservices の紹介
potato2003
August 29, 2014
Tweet
Share
Other Decks in Technology
See All in Technology
決済サービスを支えるElastic Cloud - Elastic Cloudの導入と推進、決済サービスのObservability
suzukij
2
630
VPCエンドポイント意外とお金かかるなぁ。せや、共有したろ!
tommy0124
0
370
堅牢.py#2 LT資料
t3tra
0
140
Datadog の RBAC のすべて
nulabinc
PRO
3
460
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
5
1.2k
JAWS DAYS 2026 ExaWizards_20260307
exawizards
0
420
Oracle Cloud Infrastructure IaaS 新機能アップデート 2025/12 - 2026/2
oracle4engineer
PRO
0
110
[JAWS DAYS 2026]私の AWS DevOps Agent 推しポイント
furuton
0
150
AIエージェント時代に備える AWS Organizations とアカウント設計
kossykinto
3
910
Go標準パッケージのI/O処理をながめる
matumoto
0
190
us-east-1 に障害が起きた時に、 ap-northeast-1 にどんな影響があるか 説明できるようになろう!
miu_crescent
PRO
13
4.3k
クラウド × シリコンの Mashup - AWS チップ開発で広がる AI 基盤の選択肢
htokoyo
2
240
Featured
See All Featured
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
240
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
64
53k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
170
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
140
エンジニアに許された特別な時間の終わり
watany
106
240k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
A better future with KSS
kneath
240
18k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.4k
How to make the Groovebox
asonas
2
2k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.1k
Transcript
Monolithic Architecture is Dead
ƺȉǕ✣ǣǙǞƑԚ௹ HTTPD Browser • μΠΞϧΞοϓଓ • ίϯςϯπςΩετத৺ • ςΩετΛฦ͚ͩ͢ͷγϯϓϧͳΞʔΩςΫνϟ
1990ޙʙυοτίϜόϒϧ่յޙ PHP Browser • ܝࣔ൘ɺϒϩάɺECαΠτɺνϟοτͱ͔ • ͱΓ͋͑ͣPHPͱ͔MySQL͋ΕͳΜͱ͔ͳͬͨ MySQL
Web2.0 ʙ 2000ޙ Rails Browser • SNSɺCGMɺಈըαʔϏε ʙ ͳΜ͔͍ͬͺ͍ •
AjaxɺFlash ! • Rails ͕͋ΕͳΜͱ͔ͳͬͨ • PHP ͰϑϨʔϜϫʔΫΛ࡞ΔͱḿͬͨΒ͍͠ • ͳ͔ͥɺΈΜͳ࡞ͬͯͨ MySQL Memcached
࠷ۙ Rails Browser MySQL Redis Elasticsearch Fluenttd Hadoop Android iOS
ϓογϡ௨ɺWebSocketͰϦΞϧλΠϜ௨৴ɺϒϥβ༻ʹ HTMLͭͬͨ͘ΓɺεϚϗΞϓϦ༻ʹAPIͭͬͨ͘Γɺݕࡧػೳ ఏڙͨ͠ΓɺϏοΫσʔλ࣌ͩ͠ϩΪϯάͨ͠Γɺະొͷ ϢʔβʔʹIDৼͬͯཧͨ͠ΓɺOpenIDɺ2ཁૉೝূɺ WebRTCɺࣾγεςϜͱ௨৴ͨ͠Γɺɺɺɺɺɺɺɺɺ
࠷ۙ Rails Browser MySQL Redis Elasticsearch Fluenttd Hadoop Android iOS
ϓογϡ௨ɺWebSocketͰϦΞϧλΠϜ௨৴ɺϒϥβ༻ʹ HTMLͭͬͨ͘ΓɺεϚϗΞϓϦ༻ʹAPIͭͬͨ͘Γɺݕࡧػೳ ఏڙͨ͠ΓɺϏοΫσʔλ࣌ͩ͠ϩΪϯάͨ͠Γɺະొͷ ϢʔβʔʹIDৼͬͯཧͨ͠ΓɺOpenIDɺ2ཁૉೝূɺ WebRTCɺࣾγεςϜͱ௨৴ͨ͠Γɺɺɺɺɺɺɺɺɺ
ະདྷ Rails Browser MySQL Redis Elasticsearch Fluenttd Hadoop Android iOS
Robot
ະདྷ Rails Browser MySQL Redis Elasticsearch Fluenttd Hadoop Android iOS
Robot ϩϘοτɺΣΞϥϒϧσόΠεɺWindows PhoneɺFire OSɺ! Firefox OS Έ͍ͨͳ৽͍͠σόΠεͨͪͷొɺطଘOSͷΞο ϓάϨʔυ(iOS, Android)ɺطଘٕज़༷ͷ֦ு(HTMLɺ JavaScriptɺHTTP)ɺ৽ٕज़ɺ৽धཁɺͬͱͬͱάϩʔόϦ θʔγϣϯɺɺɺɺɺɺɺɺɺ
Rails! Browser MySQL Redis Elasticsearch Fluenttd Hadoop Android iOS Robot
ϩϘοτɺΣΞϥϒϧσόΠεɺWindows PhoneɺFire OSɺ! Firefox OS Έ͍ͨͳ৽͍͠σόΠεͨͪͷొɺطଘOSͷΞο ϓάϨʔυ(iOS, Android)ɺطଘٕज़༷ͷ֦ு(HTMLɺ JavaScriptɺHTTP)ɺ৽ٕज़ɺ৽धཁɺͬͱͬͱάϩʔόϦ θʔγϣϯɺɺɺɺɺɺɺɺɺ ະདྷ
ιϑτΣΞෳࡶԽ͍ͯ͘͠!
• ΞʔΩςΫνϟෳࡶԽ͍͚ͯ͘͠ͲɺৗʹมԽ ͷରԠ͕ٻΊΒΕΔ ! ! ! ! ! • ͔͠͠ංେԽͨ͠ΞϓϦέʔγϣϯมԽʹऑ͍
• มԽʹऑ͍ͱɺαʔϏε͕ಷ͘ͳΔ
͢ΔαʔϏεͷαΠΫϧ ࣮ ֶश Ծઆ
! ! ! ! • αʔϏεϓϩάϥϛϯάͱಉ͡ • ϓϩάϥϜ1ճͰॻ͍ͯɺᘳͳΜͯͳ͍ • ίʔυॻ͍ͯɺΤϥʔग़ͯɺमਖ਼ͯ͠ɺֶशͯ͠ɺΛ܁Γฦ͠ਖ਼͍͠ίʔ
υʹ͍ͯ͘͠ • αʔϏεมߋͯ͠Έͯɺܭଌͯ͠ɺֶशͯ͠ɺ܁Γฦ ͍ͯͯ͘͠͠ ࣮ ֶश Ծઆ
! ! ! ! • ϓϥάϥϛϯάͰίʔυॻ͍ͯɺΤϥʔग़ͯɺमਖ਼ ͯ͠ɺֶश ! • ͔͠͠ɺԾʹίϯύΠϧ͕1͔͔࣌ؒΔͱɺमਖ਼ͷα
ΠΫϧ͕ಷΓɺʹͱ͕͔͔ͯ࣌ؒΔ ࣮ ֶश Ծઆ
αʔϏεಉ͡ զʑαʔϏεΛͤ͞ΔͨΊɺมߋʹ ڧ͍ΞʔΩςΫνϟ͕ඞཁ ࣮ ֶश Ծઆ αΠΫϧΛԿɺૉૣ͘ճ͢͜ͱͰɺૉ ૣ͘͢Δ
ΞʔΩςΫνϟͷ͜Ε͔Β! Microservices
͜Ε·ͰɺෳࡶԽʹରԠ͖ͯͨ͠ • lߦͷίʔυΛόάແ͠Ͱॻ͘͜ͱ؆୯͚ͩͲɺສߦͷίʔ υΛόάແ͠Ͱॻ͘͜ͱ͍͠ɻz ( by Matsumoto Yukihiro ) !
• ؔ৺ࣄΛؔɺΫϥεɺϞδϡʔϧʹͯ͠ૄ݁ ߹ʹ͖ͯͨ͠
ΞʔΩςΫνϟΛɺؔ৺ࣄͰ͢Δ App API Notification! Service Search Service Browser Android iOS
Browser Android iOS
Microservices • খ͍͞ΞϓϦέʔγϣϯʹׂ͢Δߟ͑ํɺੲ͔Β͋Δ • αʔϏεࢦΞʔΩςΫνϟ • AmazonɺTwitterɺCookpadɺฐࣾͷϓϩδΣΫτͳͲ • ͍͜͠ͱͰͳ͍ !
• ͦ͜ʹ࠷ۙɺϚʔςΟϯɾϑΝϥʔ໊͕લΛ ͚ͭͨ
API Browser MySQL Redis Elasticsearch Android iOS Notification Service Search
Service খ͍͞ΞϓϦέʔγϣϯʹׂ
• ৽ਓѲ͢Δ͜ͱ͕গͳ͘ɺ͙͢։ൃࢀՃͰ͖Δ • ʑͷ git ϩάΏͬ͘ΓͰѲ͍͢͠ ! • ಠཱ͓ͯ͠Γɺখ͘͞อͨΕΔ͜ͱͰมߋΛڪΕͳ͍ ֤ʑΛখ͍͞νʔϜͰಠཱͯ͠։ൃͰ͖Δ
API Notification! Service Search Service
API Browser MySQL Redis Elasticsearch Android iOS Notification Service Search
Service ֤ʑʹద࣮ͨ͠Λબ HTML Render WebSocket
API Notification Service Search Service ֤ʑʹݴޠɺϑϨʔϜϫʔΫͷ! όʔδϣϯΞοϓ͕Մೳ • ංେԽͨ͠ιϑτΣΞͷόʔδϣϯΞοϓਏ͍ •
εϞʔϧεςοϓͰਫ਼ਆతʹ͍͞͠
͋ͷ ϚʔςΟϯɾϑΝϥʔ ͕ • ϚʔςΟϯɾϑΝϥʔ͕هࣄʹͯ͠ɺݴ༿Λఆٛ ! • ΤϯλʔϓϥΠζΞϓϦέʔγϣϯύλʔϯຊ • ϦϑΝΫλϦϯάຊ
• Agile Manifesto • ͱ͔ͷਓ
͋ͷ ThoughtWorks • ٕज़ಈΛ·ͱΊͨ Technology Radar (JULY 2014) Ͱհ
• ͋ͷ ϚʔςΟϯɾϑΝϥʔ ࡏ੶
ٕज़ੈքΛม͖͑ͯͨ • पғʹ͋Δͷɺٕͯ͢ज़Ͱ࡞ΒΕ͍ͯΔ ! • ٕज़ɺٕज़ऀੈքΛม͖͑ͯͨ ! • ٕज़ʹҰ൪ৄ͍͠ΤϯδχΞ͕ɺෳࡶԽɺංେԽͨ͠ ιϑτΣΞͷมߋΛڪΕͯɺੈքΛม͑ΒΕͳ͍
! • มԽʹڧ͍ΞʔΩςΫνϟɺαʔϏεΛͤ͞ɺ ੈքΛม͍͑ͯ͘ୈҰาͰ͢
·ͱΊ • ະདྷෳࡶԽ͍ͯ͘͠ ! • ͜Ε·ͰΫϥεɺϞδϡʔϧʹؔ৺ࣄΛ͖ͯ͠ ͨΑ͏ʹɺΞʔΩςΫνϟͰ͢Δ ! • มߋʹڧ͍ΞʔΩςΫνϟΛ࡞ΓɺੈքΛม͍͑ͯ
͘
Thank you
Photos • https://www.flickr.com/photos/sophiadphotography/7585744722/in/photolist-68dujb-46W9RR-bRCPZM-iA2uir-4715E7-sPYJ8-tbUSE-471ePb-cyjVC7- gpKtiB-8vDKm8-oTUvZ-4rKrMD-6RroHF-BJuEk-46W9vM-56u5fn-iA2HmQ-dPjyLR-cm77s-iA2Vmn-4JC1fH-iA3cPU-689o3H-46W9hk-guANK3-2Qm8A5- hXvYqd-8vGMsE-2usKdV-nRWxvT-dz4vQ5-8vGNuA-A5eo-5yF9qU-bRCPBr-iA3eUH-8vDLzB-6f878H-6fch8J-6f87rz-6f87Jz-eeg1i9-46Zy7J- imrYkz-2Qm7Ku-5bj1Uf-5wLEJg-5GMyZV-iA3qH6 ! • https://www.flickr.com/photos/26335052@N06/14182713587/in/photolist-cFzfnJ-nBh7CB-nEf5rr-gkk69-9py3t-b7ynoa-dvN574-5syy- nzCAmh-69rkbP-6wmUYN
! • https://www.flickr.com/photos/rtarga/93573864/in/photolist-9gAfu-5BKjGR-bqjC46-apxGy8-4JjgYK-6WBQhd-8KZeDC-cA4NMm-j9fm-71Jvbc-8P5iQ8- y5Z88-cA4Pz5-7xgMsZ-8vRV3A-5nJkm9-6r8Vx4-8P5iPX-cA4PK7-5rvCYK-92Eao-mEbvW-adswkD-7GP2Eq-cXMkF-8Dww5Q- e4vrS1-8DtpUk-8DwwBN-8DtpMv-9qu92s-cA4Ni7-L1Bm7-97t61R-7TpmiZ-7xgMs8-ouUHe-c3V8sC-hPsU8w-cA4Q8E-5rvCWM-71NvsC-eSpCSL- buCJsa-5yzYaW-3BtQGi-fGhDM-uTKQj-4HPHHB-8Hwdfy