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
「マイクロサービスはもう十分」か? / Enough with the microservices?
Search
qsona
January 18, 2018
Technology
5
2.7k
「マイクロサービスはもう十分」か? / Enough with the microservices?
Microservices Meetup vol.6 Sponsor LT
qsona
January 18, 2018
Tweet
Share
More Decks by qsona
See All by qsona
サーバー間 GraphQL と webmock-graphql の話 / server-to-server graphql and webmock-graphql
qsona
4
250
Backend エンジニア視点からの GraphQL / GraphQL from a perspective of backend engineer
qsona
28
7.4k
3 Practices about Service-to-Service GraphQL Ruby Client
qsona
1
730
いかにして GraphQL を組織に導入するか (新規開発編) / how we introduce GraphQL on scratch development
qsona
6
3.7k
Well-organized Transaction Script - リファクタリングの妥協的手法 -
qsona
4
1.2k
GraphQL と Prisma から考える次のN年を見据えた技術選定 / Architecture decision for the next N years at StudySapuri
qsona
25
13k
最高のマスターデータ管理手法考察 & VSCode Extension を活用した話 / developing masterdata management tool by using vscode extension
qsona
9
5.8k
GraphQL を活用したスキーマ駆動開発の実践 / schema-driven development with GraphQL
qsona
6
4.7k
GraphQL を利用したアーキテクチャの勘所 / Architecture practices with GraphQL
qsona
37
14k
Other Decks in Technology
See All in Technology
Oracle Modern Data Platform Reference Architecture (MySQL HeatWave Lakehouse編)
oracle4engineer
PRO
1
260
社内LLMハッカソン2024発表資料
streamwest1629
0
370
「ナンモワカラン」から「チョットワカル」へ!Private CA Connector for SCEPについて話します
tokushun
0
220
MySQLのリリースモデルの変更点と最新アップデート / MySQLNewReleaseModel
yoshiakiyamasaki
2
260
ろくに電子工作もしたことない人間がIoT用ミドルウェアを作った話
takmin
0
130
Okioに愛を込めて
ryunen344
3
660
ベイジアンABテストってありなの? / Is Bayesian AB Testing Truly Effective?
ak_iyama
1
380
AWS IAMのアンチパターン/AWSが考える最低権限実現へのアプローチ概略
htan
3
230
PHPでデータベースを作ってみた/create-data-with-php
hanhan1978
5
850
半年かけてPHP5.6からPHP7.4までバージョンアップした苦労と工夫 PHPカンファレンス福岡2024
kechiiin
1
140
State of Amazon Location Service
dayjournal
0
110
Data Processing in PHP - PHPers 2024 Poznań
norzechowicz
0
110
Featured
See All Featured
Teambox: Starting and Learning
jrom
129
8.5k
Designing for Performance
lara
603
67k
What’s in a name? Adding method to the madness
productmarketing
PRO
18
2.8k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
228
16k
The Illustrated Children's Guide to Kubernetes
chrisshort
34
47k
Optimizing for Happiness
mojombo
372
69k
Product Roadmaps are Hard
iamctodd
PRO
46
10k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
34
6.2k
Building Effective Engineering Teams - LeadDev
addyosmani
40
2.1k
Building Better People: How to give real-time feedback that sticks.
wjessup
356
18k
Imperfection Machines: The Place of Print at Facebook
scottboms
261
12k
For a Future-Friendly Web
brad_frost
172
9.1k
Transcript
4QPOTPS-5 ʮϚΠΫϩαʔϏε͏ेʯ͔ʁ ٱଠ !RTPOB גࣜձࣾ'J/$ .JDSPTFSWJDFT.FFUVQWPM
લͷهࣄ ˞ݱࡏͳ͔ͥআࡁΈɾɾɾ
ݩͷهࣄ r&OPVHIXJUIUIFNJDSPTFSWJDFTc"EBN%SBLF IUUQTBBESBLFDPNQPTUTFOPVHIXJUIUIFNJDSPTFSWJDFTIUNM
هࣄͷओு ελʔτΞοϓاۀͷ΄ͱΜͲɺ ϚΠΫϩαʔϏεΛ࠾༻͖͢Ͱͳ͍ɻ
هࣄͷओு w ओு w ελʔτΞοϓاۀͷ΄ͱΜͲͰɺϚΠΫϩαʔϏεΛ࠾༻͖͢Ͱͳ͍ɻ w ཧ༝ w ϚΠΫϩαʔϏεΛ࠾༻͢Δཧ༝ͱͯ͠ڍ͛ΒΕΔ՝ʹରͯ͠ɺ͍͍ͨͯɺ ઌʹߟ͑Δ͖ଞͷղܾํ๏͕͋Δɻ
w ϚΠΫϩαʔϏεΛ࠾༻͢Δʹɺٕज़తʹલఏͱͳΔ͕݅ଘࡏ͢Δɻ ͦΕΛελʔτΞοϓͷϑΣʔζͰಘΔ͜ͱ͍͠ɻ w ϚΠΫϩαʔϏεɺຊ࣭తʹෳࡶ͞ΛੜΉͷͰɺελʔτΞοϓͷϑΣʔζͰରॲ͢Δͷ͍͠ɻ
ײ w ͦͷ௨Γͩͱࢥ͍·͢ɻ w ϚΠΫϩαʔϏεϞδϡʔϧͷڥք͕ෆ໌ྎͳ͏ͪʹΔͱࣦഊ͠ ͍͢ɻ w ςετɺϩΪϯάɺࢹͳͲΛ͖ͪΜͱߦ͏ͷ͕ɺϞϊϦγοΫʹൺ ͯେมɻ w
ࢄγεςϜຊ࣭తʹෳࡶɻ
ۜͷؙͳ͍ ࢳౙ
None
ʜ͏গ͠ৄ͘͠ɻ w هࣄͷओுͷ͏ͪɺ࠷Ҿ༻͕ଟ͔ͬͨ෦ʹ͍ͭͯɺ ਫ਼ࠪͯ͠ΈΔɻ w ʮνʔϜؒͷґଘੑʯͱ͍͏՝ʹରͯ͠ͷղܾࡦͱͯ͠ɺ ͍͖ͳΓϚΠΫϩαʔϏεΛಋೖ͢Δͷ͏·͍͔͘ͳ͍ ͱ͍͏
r&OPVHIXJUIUIFNJDSPTFSWJDFTc"EBN%SBLF l%PO`UDPOGVTFEFDPVQMJOHXJUI EJTUSJCVUJPOz
هࣄͷओு w ৫͕େ͖͘ͳͬͯ͘Δͱɺ ෳͷνʔϜ͕ҰͭͷίʔυϕʔεͰ࡞ۀ͢ΔΑ͏ʹͳΔɻ w νʔϜؒͷґଘ ίϛϡχέʔγϣϯίετ ΛԼ͛ΔͨΊɺ ϚΠΫϩαʔϏεʹ͠Α͏ͱ͢Δྫ͕͋Δɻ w
͔͠͠ɺϚΠΫϩαʔϏεʹͨ͠ͱͯ͠ίϛϡχέʔγϣϯͷ͕ ղܾ͢ΔΘ͚Ͱͳ͍ɻ w ࣮ࡍʹɺϞϊϦεͷϞδϡʔϧׂͰेରॲͰ͖Δɻ
ஸೡʹߟͯ͠ΈΔ w ʮνʔϜʯͱԿͳͷ͔ʁ w ͳͥνʔϜ͕େ͖͘ͳΔͱνʔϜΛׂ͢Δͷ͔ʁ w ʮνʔϜؒͷґଘʯͱԿͳͷ͔ʁ ʮνʔϜؒͷґଘʯ͕ߴ͍ͱԿ͕ͳͷ͔ʁ
ʮνʔϜʯͱԿͳͷ͔ʁ w ͋ΔతͷͨΊʹڠྗͯ͠ߦಈ͢Δάϧʔϓ ࣙԓ w ͦͷతʹ͔ͬͯɺνʔϜࣗओతɾࣗతʹಈ͚Δ͖ w ଟ͘ͷίϛϡχέʔγϣϯܾఆɺνʔϜͰ݁͢Δ͖
νʔϜ͕େ͖͘ͳΔͱ w ίϛϡχέʔγϣϯͷύε͕ଟ͘ͳΔ w νʔϜͷతͱϝϯόʔͷׂ͕ԕ͘ͳΓɺࣗੑ͕Լ͕Δ
νʔϜΛׂ͢Δ w େ͖ͳతΛɺΑΓࡉ͔͍తʹղ͢Δ w ࡉ͔͍తʹ߹Θͤͯɺখ͞ͳνʔϜʹղ͢Δ w ͔͠͠ɺେ͖͍νʔϜͷΛղফͰ͖Δ͔ɺ ͜ͷղͷํ๏ʹΑΔ w ѱ͍ղͷྫతಉ͕࢜ίϯϑϦΫτ͢Δ
ѱׂ͍ͷྫ%FW0QT w ։ൃͱӡ༻ɺత͕ίϯϑϦΫτ͢Δ w ຊདྷɺ։ൃͱӡ༻Λ߹ΘͤͯϏδωε্ͷతΛୡ͢ΔͷͰ͋Δ
ʮνʔϜͷґଘʯͱʁ w ֤νʔϜ͕શʹಠཱͯ͠ҙࢥܾఆͨ͠ΓߦಈͰ͖Δঢ়ଶɺ νʔϜͷґଘ͕θϩ w ࣮ࡍʹɺҰఆҎ্ͷίϛϡχέʔγϣϯ͕ඞཁ w ڠྗɺརؔͷௐͳͲ w ґଘ͕গͳ͍΄ͲɺνʔϜ͕ࣗతʹಈ͚Δ
໋ܕ৫ػೳܕ৫ w ৫ɺͭͷయܕతͳܗଶʹ͚ΒΕΔɻશͳ ໋த৺ͷܗଶͱػೳผฤܗଶͰ͋Δɻ w ձࣾͷେ෦Λ໋த৺ܗଶʹ৫Խ͢Δॴ ུ ɺݸʑͷूஂ୯Ґ͕ɺઈ͑ͣࣗͷࣄۀ͋Δ ͍ʹର͢Δχʔζͱ৮Λอͪɺ͜͏͠ ͨχʔζͷมԽʹରͯ͠ਝʹରԠͰ͖Δͱ͍͏
ᶸ͚ͩᶹͰ͋Δɻ w ͔͠͠ɺͲΜͳࣄۀͰɺͦͷຊڥ͔Βͷ धཁͱχʔζʹԠ͑Δ͜ͱͰ͋Γɺ͜ͷଈԠͰ͖Δ ͔൱͔͕͖ΘΊͯॏཁͳΧΪͰ͋Δɻ rΞϯυϦϡʔɾ4ɾάϩʔϒ )*()065165."/"(&.&/5 ষϋΠϒϦου৫
໋ܕ৫ػೳܕ৫ w ໋த৺ͷ৫ w ໋Ϗδωε w ˞ٕज़ͦͷͷ͕Ϗδωεͷ৫͋Δ w ਨׂ w
FH'J/$ΞϓϦνʔϜ w ػೳத৺ͷ৫ w ػೳٕज़ w ਫฏׂ w FHαʔόʔαΠυνʔϜ
ϚΠΫϩαʔϏε໋ܕ ϚΠΫϩαʔϏεओʹϏδωευϝΠϯʹ ج͍ͮͯϞσϧԽ͢Δ͜ͱͰɺैདྷͷ֊ܕ ΞʔΩςΫνϟͷΛආ͚͍ͯ·͢ɻ rϚΠΫϩαʔϏεΞʔΩςΫνϟ ͡Ίʹ 4BN/FXNBOஶɺࠤ౻ੜ༁ɺԼ༁
ϚΠΫϩαʔϏεࣗత ϚΠΫϩαʔϏεɺڠௐͯ͠ಈ࡞͢Δখن ͰࣗతͳαʔϏεͰ͢ɻ rϚΠΫϩαʔϏεΞʔΩςΫνϟ ষ 4BN/FXNBOஶɺࠤ౻ੜ༁ɺԼ༁
ϚΠΫϩαʔϏεͱ৫ w ৫ߏͱϚΠΫϩαʔϏεɺશʹΞφϩδʔͷؔʹ͋Δ w ৫ͷಠཱੑσϓϩΠͷಠཱੑ w ৫ಉ࢜ͷ࿈ܞ"1*࿈ܞΠϕϯτ࿈ܞ w ৫ಉ͕࢜ີ݁߹ͳΒɺ ͦΕʹԊͬͯϚΠΫϩαʔϏεԽͯ͠Γີ݁߹ʹͳΔ
هࣄͷओு ࠶ܝ w ৫͕େ͖͘ͳΔͱɺෳͷνʔϜ͕ҰͭͷίʔυϕʔεͰ࡞ۀ͢ΔΑ͏ʹͳΔɻ w νʔϜؒͷґଘ ίϛϡχέʔγϣϯίετ ΛԼ͛ΔͨΊɺϚΠΫϩαʔϏεʹ ͠Α͏ͱ͢Δྫ͕͋Δɻ w
͔࣮͠͠ࡍʹɺϞϊϦεͷϞδϡʔϧׂͰेରॲͰ͖Δɻ w ·ͨɺϚΠΫϩαʔϏεʹͨ͠ͱͯ͠ίϛϡχέʔγϣϯͷ͕ղܾ͢ΔΘ͚ Ͱͳ͍ɻ
ελʔτΞοϓͱ৫ w ଟ͘ͷελʔτΞοϓͰɺ৫Λ͖Ε͍ʹׂ͢Δ͜ͱ͕͍͠ w తͷղ ઓུ ͕ेͰͳ͍ w ͜Ζ͜ΖมΘΔ w
͔ͩΒϚΠΫϩαʔϏεʹׂ͢Δͷ͍͠ w Ͱɺ࠷ॳϞϊϦεͷ··ϞδϡʔϧԽ͚͖ͩ͢ͳͷ͔ʁ
ͭͷ Ҿ༻ʹΑΔ ٕज़తʹɺదʹղ͞Εͨಠཱͨ͠Ϟδϡʔ ϧΛͭͷϞϊϦγοΫϓϩηεʹ࡞͢ Δ͜ͱՄೳͳͣͰ͢ɻ͔͠͠ɺ·ͩ΄ͱΜ Ͳొ͍ͯ͠·ͤΜɻϞδϡʔϧ͙͢ʹΓ ͷίʔυͱີ݁߹ʹͳΓɺओͳརͷͭΛ ์غ͢Δ͜ͱʹͳΓ·͢ɻϓϩηεڥքͰ ͢Δͱɺ͜ͷͰਖ਼͍͠ঢ়ଶ͕ڧ੍͞Ε·͢ গͳ͘ͱؒҧͬͨ͜ͱΛ͠ʹ͘͘ͳΓ·͢
ɻ ͪΖΜɺओʹ͜ͷ͜ͱʹΑͬͯɺϓϩηε Λਪਐ͖ͩ͢ͱݴ͍·ͤΜ͕ɺ࣮ੈքͰ ϓϩηεڥքͰͷϞδϡʔϧͷଋ͕ कΒΕͨ͜ͱ΄ͱΜͲ͋Γ·ͤΜɻ rϚΠΫϩαʔϏεΞʔΩςΫνϟ ষ 4BN/FXNBOஶɺࠤ౻ੜ༁ɺԼ༁
ελʔτΞοϓͱ৫ w ڊେͳϞϊϦεʹͳͬͯ͠·͏ͱɺΓׂ͢Δ͜ͱ͕͍͠ w ϚΠΫϩαʔϏεʹ͚ͳͯ͘ɺීஈ͔ΒυϝΠϯΛҙࣝ͢Δ w ໌Β͔ʹ໌֬ͳυϝΠϯ͕Ͱ͖ͨλΠϛϯάͰɺੵۃతʹϚΠΫϩαʔϏ εʹׂ͍ͯ͘͠ w όϥϯεײ͕֮ॏཁ
૯ w ελʔτΞοϓاۀͷ΄ͱΜͲͰɺϚΠΫϩαʔϏεΛ࠾༻͖͢Ͱ ͳ͍ɻɺͨͿΜਖ਼͍͠ɻ w ͔͠͠ɺελʔτΞοϓʹঢ়گϑΣʔζ͕͋Δɻ w ͙͢ʹϚΠΫϩαʔϏεʹ͔Θͳͯ͘ɺʮϚΠΫϩαʔϏεਫ਼ਆʯΛ ࣋ͭ͜ͱେࣄͳͷͰͳ͍͔ɻ