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.9k
「マイクロサービスはもう十分」か? / 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
480
Backend エンジニア視点からの GraphQL / GraphQL from a perspective of backend engineer
qsona
28
8.6k
3 Practices about Service-to-Service GraphQL Ruby Client
qsona
1
990
いかにして GraphQL を組織に導入するか (新規開発編) / how we introduce GraphQL on scratch development
qsona
6
4k
Well-organized Transaction Script - リファクタリングの妥協的手法 -
qsona
4
1.4k
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.4k
GraphQL を活用したスキーマ駆動開発の実践 / schema-driven development with GraphQL
qsona
6
5.4k
GraphQL を利用したアーキテクチャの勘所 / Architecture practices with GraphQL
qsona
37
15k
Other Decks in Technology
See All in Technology
AIとともに進化するエンジニアリング / Engineering-Evolving-with-AI_final.pdf
lycorptech_jp
PRO
0
140
Zephyr RTOSを使った開発コンペに参加した件
iotengineer22
0
130
Witchcraft for Memory
pocke
1
660
KubeCon + CloudNativeCon Japan 2025 Recap by CA
ponkio_o
PRO
0
240
開発生産性を組織全体の「生産性」へ! 部門間連携の壁を越える実践的ステップ
sudo5in5k
0
340
AI専用のリンターを作る #yumemi_patch
bengo4com
3
1.8k
Model Mondays S2E03: SLMs & Reasoning
nitya
0
240
Node-RED × MCP 勉強会 vol.1
1ftseabass
PRO
0
180
Lambda Web Adapterについて自分なりに理解してみた
smt7174
5
140
あなたの声を届けよう! 女性エンジニア登壇の意義とアウトプット実践ガイド #wttjp / Call for Your Voice
kondoyuko
4
500
rubygem開発で鍛える設計力
joker1007
2
270
Yamla: Rustでつくるリアルタイム性を追求した機械学習基盤 / Yamla: A Rust-Based Machine Learning Platform Pursuing Real-Time Capabilities
lycorptech_jp
PRO
4
170
Featured
See All Featured
Producing Creativity
orderedlist
PRO
346
40k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Scaling GitHub
holman
459
140k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Navigating Team Friction
lara
187
15k
Bash Introduction
62gerente
614
210k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
500
KATA
mclloyd
30
14k
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 ͙͢ʹϚΠΫϩαʔϏεʹ͔Θͳͯ͘ɺʮϚΠΫϩαʔϏεਫ਼ਆʯΛ ࣋ͭ͜ͱେࣄͳͷͰͳ͍͔ɻ