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
マイクロサービスがほしいと思ったときに本当に必要だったもの〜なぜ人は共通基盤の夢を見るのか〜 ...
Search
Hiromi Hishida
March 07, 2024
Programming
5
1.5k
マイクロサービスがほしいと思ったときに本当に必要だったもの〜なぜ人は共通基盤の夢を見るのか〜 / why microservice
PHPerKaigi2024 day0前夜祭で発表
Hiromi Hishida
March 07, 2024
Tweet
Share
More Decks by Hiromi Hishida
See All by Hiromi Hishida
すばやく実装するための戦略とテクニック2024 / speed is power! 2024 #techramen24conf #shoyu
77web
8
4.1k
#phpcon_odawara オープン・クローズドなテストフィクスチャを求めて / open closed test fixtures
77web
3
430
Doctrine ORMでValue Objectを扱う方法4選 #phpstudy / 4 ways to handle Value Objects with Doctrine ORM
77web
4
220
100%出しきれないのを許すスクラムチーム運営
77web
1
240
モデルとはなにか / what is model?
77web
6
2.8k
たとえば、唐揚げを揚げながらPHPコードを書く技術 #phpstudy
77web
1
380
ベテランのバグ調査の秘訣、こっそり教えちゃいます。
77web
25
10k
Symfony+Doctrine ORMで始める安全なモジュラモノリス
77web
3
4.3k
他人がはやく読めるコードを書く ために
77web
11
5k
Other Decks in Programming
See All in Programming
C#/.NETのこれまでのふりかえり
tomokusaba
1
160
CPython 인터프리터 구조 파헤치기 - PyCon Korea 24
kennethanceyer
0
240
とにかくAWS GameDay!AWSは世界の共通言語! / Anyway, AWS GameDay! AWS is the world's lingua franca!
seike460
PRO
1
540
Identifying User Idenity
moro
6
7.8k
プロジェクト新規参入者のリードタイム短縮の観点から見る、品質の高いコードとアーキテクチャを保つメリット
d_endo
1
1k
弊社の「意識チョット低いアーキテクチャ」10選
texmeijin
5
23k
詳細解説! ArrayListの仕組みと実装
yujisoftware
0
480
Realtime API 入門
riofujimon
0
110
JaSST 24 九州:ワークショップ(は除く)実践!マインドマップを活用したソフトウェアテスト+活用事例
satohiroyuki
0
260
Golang と Erlang
taiyow
8
1.9k
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
830
RailsのPull requestsのレビューの時に私が考えていること
yahonda
5
1.7k
Featured
See All Featured
Practical Orchestrator
shlominoach
186
10k
Product Roadmaps are Hard
iamctodd
PRO
48
10k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
7.9k
Building Adaptive Systems
keathley
38
2.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
107
49k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
How GitHub (no longer) Works
holman
311
140k
RailsConf 2023
tenderlove
29
880
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
Gamification - CAS2011
davidbonilla
80
5k
Agile that works and the tools we love
rasmusluckow
327
21k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
Transcript
UI.BSDI BU1)1FS,BJHJ CZ!XFC ʮϚΠΫϩαʔϏε͕΄͍͠ʂʯͱ ࢥͬͨͱ͖ʹຊʹඞཁͩͬͨͷ ʙͳͥਓڞ௨ج൫ͷເΛݟΔͷ͔ʙ
w 1)1FSྺ໊ݹࡏॅ w ʙϑϦʔϥϯε։ൃऀ w ࣗࣾαʔϏεاۀʹब৬ w స৬Λܦͯɺݱࡏ༧ҩྍςοΫ ͷϦϯέʔδͷΤϯδχΞ w
#UP#UP&༧ҩྍϓϩμΫτΛ࡞ͬ ͍ͯ·͢ w ຊ4ZNGPOZϢʔβʔձ /BHPZBQIQ XFCʢͳͳ͏͐Ϳʣ ঁੑͷ݈߁՝αϙʔτ '&.$-& ͔͔Γ͚ͭอ݈ࢣGPS-*/&
͜ͷτʔΫͷର w ϚΠΫϩαʔϏεྑͦ͞͏ͱࢥͬͯΔ1)1FS w ͏ͪͷγεςϜɺઈରϚΠΫϩαʔϏεʹ͖͢ʂͱࢥ͍ͬͯΔ1)1FS
IUUQTTQFBLFSEFDLDPNXFCQIQFSEFNPEFLJSVNBJLVSPTBCJTV 1)1FS,BJHJ
ϚΠΫϩαʔϏεͱʢ͓͞Β͍ʣ w ڠௐͯ͠ಈ࡞͢ΔখنͰࣗతͳαʔϏε w ຊମͱͳΔϝΠϯγεςϜͱ࿈ಈ͢Δ w िؒͰશମΛॻ͖ͤΔ͙Β͍খن w ಠཱͯ͠ϦϦʔεɾมߋͰ͖ɺٕज़ʹґଘ͠ͳ͍"1*Ͱͭͳ͕Δ
ϚΠΫϩαʔϏεͰԿ͕خ͍͔͠ʁʢ͓͞Β͍ʣ w ٕज़తҟ࣭ੑ w ճ෮ੑ w εέʔϦϯά w σϓϩΠ༰қੑ w
ަՄೳੑ ϝΠϯγεςϜ͕1)1͔ͩΒͬͯɺαʔϏε·Ͱ1)1͡Όͳ͍͍ͯ͘ োͷൣғ͕ݶఆͰ͖ΔɻͭͷαʔϏε͕མͪͯଞͷॲཧʹӨڹΛٴ΅͞ͳ͍ ۃʹෛՙͷߴ͍αʔϏε͚ͩߴੑೳͷαʔόʔΛར༻Ͱ͖Δɻॲཧ͖͕݅͢ ଟ͍αʔϏε͚ͩଟىಈͰ͖Δ શମͰͳͭ͘ͷαʔϏε͚ͩσϓϩΠͰ͖Δ ͭͷαʔϏε͚ͩதΛೖΕସ͑Δ͜ͱ͕Ͱ͖Δ
ϚΠΫϩαʔϏε͕΄͍͠ʂ
ͳΜͰʁ w ৽͍͜͠ͱͬͯΈ͍ͨ w ͳΜ͔ڧͦ͏ w ۜͷؙʹҧ͍ͳ͍ w ͜ΕΛωλʹͯ͠ొஃ͍ͨ͠
ͳΜͰʁ w ৽͍͜͠ͱͬͯΈ͍ͨ w ͳΜ͔ڧͦ͏ w ۜͷؙʹҧ͍ͳ͍ w ͜ΕΛωλʹͯ͠ొஃ͍ͨ͠
ͳΜͰʁ
"͞ΜෳͷγεςϜʹಉ͡Α͏ͳॲཧ͕͋Δ͔Β
"͞ΜෳͷγεςϜʹಉ͡Α͏ͳॲཧ͕͋Δ͔Β w ಉ͡ػೳ w ຊʹಉ͔͡ʁ w ܾࡁɾೝূ w ίϐϖͨ͘͠ͳ͍ w
όά͕ݟ͔ͭͬͨͱ͖ʹશγεςϜΛमਖ਼ͯ͠ճΔඞཁ͕͋Δ w ίϐϖઌͰͷΧελϜߟྀͨ͠मਖ਼ͷқ͕ߴ͍
"͞ΜෳͷγεςϜʹಉ͡Α͏ͳॲཧ͕͋Δ͔Β w ύοέʔδԽͰରॲՄೳ w ڞ௨෦ͷίʔυΛύοέʔδʹ֤ͯ͠ར༻ଆͷγεςϜ͔ΒDPNQPTFSSFRVJSF͢Δ w QBDLBHJTUʹެ։ͪ͠Ό͏ w QSJWBUFQBDLBHJTUʹ՝ۚͯࣗࣾ͠ઐ༻ͷQBDLBHJTUΛ͏ w
TBUJTΛӡ༻ͯࣗࣾ͠ઐ༻ͷΦϨΦϨQBDLBHJTUΛ͏ w SFRVJSF͢ΔଆͷDPNQPTFSKTPOͷSFQPTJUPSJFTઃఆʹWDTͱͯ͠(JU)VCϨϙδτϦ Λࢦఆ͢ΔʢҰ൪͓खܰʣ
ͳΜͰʁ
#͞Μར༻λΠϛϯάͷൟ͕ؓ͋ͬͯಛఆͷ࣌ظ͚ͩͨ͘͞Μॲཧ͠ͳ͍ͱ͍͚ͳ͍ ͔Β
#͞Μར༻λΠϛϯάͷൟ͕ؓ͋ͬͯಛఆͷ࣌ظ͚ͩͨ͘͞Μॲཧ͠ͳ͍ͱ͍͚ͳ͍ ͔Β w ݄ॳɾ݄ɾޒेͳͲϏδωε্ͷཧ༝Ͱಛఆ͚ͩγεςϜ͕ࠞࡶ͠ɺ ଞͷʹ΄ͱΜͲಈ͔ͳ͍͜ͱΑ͋͘Δ w యܕతʹձܭͷకΊ w ϚΠΫϩαʔϏεʹεέʔϦϯάՄೳͱ͍͏ಛ͕͋Δ ۃʹෛՙͷߴ͍αʔϏε͚ͩߴੑೳͷαʔόʔΛར༻Ͱ͖Δɻॲཧ͖͕݅͢
ଟ͍αʔϏε͚ͩଟىಈͰ͖Δ
#͞Μར༻λΠϛϯάͷൟ͕ؓ͋ͬͯಛఆͷ࣌ظ͚ͩͨ͘͞Μॲཧ͠ͳ͍ͱ͍͚ͳ͍ ͔Β w ϑϨʔϜϫʔΫͷδϣϒΩϡʔͰରॲՄೳ w δϣϒྔʹΑΓδϣϒϥϯφʔΛΦʔτεέʔϧͤ͞Δ w ͋Β͔͡Ί͕࣌Θ͔͍ͬͯΔͳΒಛఆ͚࣌ͩେྔىಈͰ͖Δ
ͳΜͰʁ
$͞Μಛఆͷॲཧ͚ͩ1)1Ҏ֎ͷݴޠΛ͍͍͔ͨΒ
$͞Μಛఆͷॲཧ͚ͩ1)1Ҏ֎ͷݴޠΛ͍͍͔ͨΒ w ඇಉظॲཧը૾ॲཧɺଞݴޠͷ1)1ΑΓศརͳػೳɾϥΠϒϥϦΛγε ςϜͷಛఆͷػೳ͚ͩͰ͏ w ϚΠΫϩαʔϏεʹҟ࣭ੑͱ͍͏ಛ͕͋Δ ϝΠϯγεςϜ͕1)1͔ͩΒͬͯɺαʔϏε·Ͱ1)1͡Όͳ͍͍ͯ͘
$͞Μಛఆͷॲཧ͚ͩ1)1Ҏ֎ͷݴޠΛ͍͍͔ͨΒ w FYFD TZNGPOZQSPDFTT1)1͔ΒଞͷݴޠͷॲཧΛݺͼग़͢ͷͰ࣮ݱ Մೳ w ଞݴޠͷϥΠϒϥϦ͕༗໊ͳػೳͰ1)1ʹΦʔϓϯιʔεͷϥΠϒϥϦ͕ ଘࡏ͍ͯ͠Εɺ1)1Ͱ࣮Մೳ
ͳΜͰʁ
%͞ΜෳγεςϜ͔Βڞ௨ͷσʔλϕʔε͕͍͍͔ͨΒ
%͞ΜෳγεςϜ͔Βڞ௨ͷσʔλϕʔε͕͍͍͔ͨΒ w ࣗࣾͷෳͷγεςϜʹڞ௨ͷ*%ͰϩάΠϯ͍ͤͨ͞ w ࣗࣾͷෳͷγεςϜͷܾࡁΛ߹ࢉͰߦ͑ΔΑ͏ʹ͍ͨ͠ w ࣗࣾͷෳͷγεςϜͷϙΠϯτΛ߹ࢉͰ͑ΔΑ͏ʹ͍ͨ͠
%͞ΜෳγεςϜ͔Βڞ௨ͷσʔλϕʔε͕͍͍͔ͨΒ w ϚΠΫϩαʔϏεԽΛݕ౼ͯ͠ྑ͍ w ͔ͯ͠͠ɿϚΠΫϩαʔϏεͰͳ͘ɺαϒγεςϜϓϥοτϑΥʔϜ w *%BBTࢹʹ
ϚΠΫϩαʔϏεΛקΊ͍ͨͷʁࢭΊ͍ͨͷʁ ✋
ϚΠΫϩαʔϏεͷσϝϦοτ w ϚΠΫϩαʔϏεͷ͚ͩσϓϩΠ͠ͳ͚ΕͳΒͳ͍ w ಠཱੑ w ϚΠΫϩαʔϏεͷ͚ͩϑϨʔϜϫʔΫݴޠͷΞοϓσʔτΛ͠ͳ͚Ε ͳΒͳ͍
ϚΠΫϩαʔϏε͕΄͍͠ʂ w ෳͷγεςϜʹಉ͡Α͏ͳॲཧ͕͋Δ͔Β w ར༻λΠϛϯάͷൟ͕ؓ͋ͬͯɺಛఆͷ࣌ظ͚ͩͨ͘͞Μॲཧ͠ͳ͍ͱ͍͚ ͳ͍͔Β w ಛఆͷॲཧ͚ͩ1)1Ҏ֎ͷݴޠΛ͍͍͔ͨΒ w ෳγεςϜ͔Βڞ௨ͷσʔλϕʔε͕͍͍͔ͨΒ
ϚΠΫϩαʔϏε͕΄͍͠ʂͱࢥͬͨͱ͖ʹຊʹඞཁͩͬͨͷ w ෳͷγεςϜʹಉ͡Α͏ͳॲཧ͕͋Δ͔Β w ύοέʔδԽ w ར༻λΠϛϯάͷൟ͕ؓ͋ͬͯɺಛఆͷ࣌ظ͚ͩͨ͘͞Μॲཧ͠ͳ͍ͱ͍͚ͳ͍͔Β w ϞϊϦεͷϑϨʔϜϫʔΫͷδϣϒΩϡʔ׆༻ɾεέʔϦϯά w
ಛఆͷॲཧ͚ͩ1)1Ҏ֎ͷݴޠΛ͍͍͔ͨΒ w FYFD TZNGPOZQSPDFTTɺ1)1ͷΦʔϓϯιʔεϥΠϒϥϦͷ׆༻ w ෳγεςϜ͔Βڞ௨ͷσʔλϕʔε͕͍͍͔ͨΒ w ϚΠΫϩαʔϏεͰͳ͘ϓϥοτϑΥʔϜɻ*%BBTࢹʹɻ
ϚΠΫϩαʔϏε͕΄͍͠ʂ w ෳͷγεςϜʹಉ͡Α͏ͳॲཧ͕͋Δ͔Β w ར༻λΠϛϯάͷൟ͕ؓ͋ͬͯɺಛఆͷ࣌ظ͚ͩͨ͘͞Μॲཧ͠ͳ͍ͱ͍͚ ͳ͍͔Β w ಛఆͷॲཧ͚ͩ1)1Ҏ֎ͷݴޠΛ͍͍͔ͨΒ w ෳγεςϜ͔Βڞ௨ͷσʔλϕʔε͕͍͍͔ͨΒ
"/%
ΞϓϦέʔγϣϯΛ࣋ଓతʹ։ൃՄೳʹ͢Δ͜ͱ͕Ұ൪େࣄ w ͯ͢ͷʮͳΜͰʁʯΛݕ౼ͯ͠ɺͦΕͰ·ͩϚΠΫϩαʔϏε͕ඞཁͳΒ Δ͠
None
ʲืूʳঁੑैۀһ͚݈߁αϙʔταʔϏεࠓݶఆແྉ 13 w '&.$-&͕ްੜ࿑ಇল࣮ূࣄۀʹ࠾͞Ε·ͨ͠ w ࢀՃاۀͷঁੑैۀһͷํʹ'&.$-&ͷ༷ʑͳػೳΛ࣮ ࡍʹͬͯΒ͍ɺޮՌΛݕূ w ௨ৗ༗ྉͷαʔϏε͕ɺ࣮ূࣄۀ൛ʢࠓݶఆʣΛ͝ར ༻ͷ߹✨ແྉ✨
w ࢀՃاۀืूதʢ݄·Ͱडதʣ w ৄࡉࢲʢ!XFCʣʹ9ͷ%.ΛૹΔ͔ɺ1)1FS,BJHJձ Ͱֻ͓͚͍ͩ͘͞🙏 આ໌ձਃࠐΈϖʔδ
5IBOLZPV