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.8k
「マイクロサービスはもう十分」か? / 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
420
Backend エンジニア視点からの GraphQL / GraphQL from a perspective of backend engineer
qsona
27
8.3k
3 Practices about Service-to-Service GraphQL Ruby Client
qsona
1
900
いかにして GraphQL を組織に導入するか (新規開発編) / how we introduce GraphQL on scratch development
qsona
6
4k
Well-organized Transaction Script - リファクタリングの妥協的手法 -
qsona
4
1.3k
GraphQL と Prisma から考える次のN年を見据えた技術選定 / Architecture decision for the next N years at StudySapuri
qsona
25
14k
最高のマスターデータ管理手法考察 & VSCode Extension を活用した話 / developing masterdata management tool by using vscode extension
qsona
9
6.3k
GraphQL を活用したスキーマ駆動開発の実践 / schema-driven development with GraphQL
qsona
6
5.2k
GraphQL を利用したアーキテクチャの勘所 / Architecture practices with GraphQL
qsona
37
15k
Other Decks in Technology
See All in Technology
RemoveだらけのPHPUnit 12に備えよう
cocoeyes02
0
300
NFV基盤のOpenStack更新 ~9世代バージョンアップへの挑戦~
vtj
0
360
Iceberg Meetup Japan #1 : Iceberg and Databricks
databricksjapan
0
370
JavaにおけるNull非許容性
skrb
2
2.6k
設計を積み重ねてシステムを刷新する
sansantech
PRO
0
170
遷移の高速化 ヤフートップの試行錯誤
narirou
6
1.2k
技術スタックだけじゃない、業務ドメイン知識のオンボーディングも同じくらいの量が必要な話
niftycorp
PRO
0
110
AI Agent時代なのでAWSのLLMs.txtが欲しい!
watany
2
230
Two Blades, One Journey: Engineering While Managing
ohbarye
4
2k
データベースの負荷を紐解く/untangle-the-database-load
emiki
2
520
Apache Iceberg Case Study in LY Corporation
lycorptech_jp
PRO
0
330
AIエージェント開発のノウハウと課題
pharma_x_tech
0
100
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
430
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Agile that works and the tools we love
rasmusluckow
328
21k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Bootstrapping a Software Product
garrettdimon
PRO
306
110k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
The Language of Interfaces
destraynor
156
24k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
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 ͙͢ʹϚΠΫϩαʔϏεʹ͔Θͳͯ͘ɺʮϚΠΫϩαʔϏεਫ਼ਆʯΛ ࣋ͭ͜ͱେࣄͳͷͰͳ͍͔ɻ