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
350
Backend エンジニア視点からの GraphQL / GraphQL from a perspective of backend engineer
qsona
28
8.1k
3 Practices about Service-to-Service GraphQL Ruby Client
qsona
1
840
いかにして GraphQL を組織に導入するか (新規開発編) / how we introduce GraphQL on scratch development
qsona
6
3.9k
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.1k
GraphQL を活用したスキーマ駆動開発の実践 / schema-driven development with GraphQL
qsona
6
5k
GraphQL を利用したアーキテクチャの勘所 / Architecture practices with GraphQL
qsona
37
15k
Other Decks in Technology
See All in Technology
AWS Media Services 最新サービスアップデート 2024
eijikominami
0
200
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
710
TypeScript、上達の瞬間
sadnessojisan
46
13k
これまでの計測・開発・デプロイ方法全部見せます! / Findy ISUCON 2024-11-14
tohutohu
3
370
DynamoDB でスロットリングが発生したとき_大盛りver/when_throttling_occurs_in_dynamodb_long
emiki
1
440
【Startup CTO of the Year 2024 / Audience Award】アセンド取締役CTO 丹羽健
niwatakeru
0
1.3k
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.7k
LINEヤフーにおけるPrerender技術の導入とその効果
narirou
1
110
iOSチームとAndroidチームでブランチ運用が違ったので整理してます
sansantech
PRO
0
150
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
540
ノーコードデータ分析ツールで体験する時系列データ分析超入門
negi111111
0
430
SSMRunbook作成の勘所_20241120
koichiotomo
3
160
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
506
140k
How STYLIGHT went responsive
nonsquared
95
5.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Docker and Python
trallard
40
3.1k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
10 Git Anti Patterns You Should be Aware of
lemiorhan
655
59k
The Cost Of JavaScript in 2023
addyosmani
45
6.8k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Building an army of robots
kneath
302
43k
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 ͙͢ʹϚΠΫϩαʔϏεʹ͔Θͳͯ͘ɺʮϚΠΫϩαʔϏεਫ਼ਆʯΛ ࣋ͭ͜ͱେࣄͳͷͰͳ͍͔ɻ