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
Step Functionsの良さを伝えたい。
Search
村松祥(しょう)
June 22, 2024
0
260
Step Functionsの良さを伝えたい。
村松祥(しょう)
June 22, 2024
Tweet
Share
More Decks by 村松祥(しょう)
See All by 村松祥(しょう)
インフラエンジニアでもアプリ開発がしたい_.pdf
shawnmuramatsu
1
240
Japan AWS Jr. Champions までの道のりとこれから
shawnmuramatsu
0
340
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
790
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.5k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Thoughts on Productivity
jonyablonski
69
4.8k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
GitHub's CSS Performance
jonrohan
1032
460k
Writing Fast Ruby
sferik
628
62k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Transcript
5*4גࣜձࣾଜদ "844UFQ'VODUJPOTͷྑ͞Λ͍͑ͨ
࣍ ɾࣗݾհ ɾ"844UFQ'VODUJPOTͷհͱ࠾༻എܠ ɾࣄྫհ ɾ·ͱΊ ɾ
ࣗݾհ
w ໊લɿଜদ ΉΒ·ͭ͠ΐ͏ w ܦྺɿాถϘετϯా w झຯɿຑɺυϥΠϒɺٿ؍ઓ w ͖ͳαʔϏεɿ"844UFQ'VODUJPOT
w Ұݴɿ ଟ SF*OWFOUؼ35"࠷هอ࣋ऀͰ͢ ࣗݾհ !++N@TIBXO "844UFQ'VODUJPOT
w ࣗ㱻ాۭߓˠెา ిं w ࣗ㱻ాۭߓˠं SF*OWFOUؼ35"ʹ͍ͭͯ
"844UFQ'VODUJPOTͷհͱ࠾༻എܠ
"844UFQ'VODUJPOTͷհͱ࠾༻എܠ ެࣜΑΓҾ༻ "844UFQ'VODUJPOTɺσϕϩούʔ͕"84ͷαʔϏεΛར༻ͯ͠ࢄܕΞϓϦέʔγϣϯΛߏங͠ɺϓϩηεΛࣗಈ Խ͠ɺϚΠΫϩαʔϏεͷΦʔέετϨʔγϣϯɺσʔλͱػցֶशͷύΠϓϥΠϯΛߏஙͰ͖ΔΑ͏ʹ͢ΔϏδϡΞϧϫʔ ΫϑϩʔαʔϏεͰ͢ɻ w (6*ͰϫʔΫϑϩʔ͕࡞ΕΔ w ϫʔΫϑϩʔzΞΫγϣϯzͱzϑϩʔzͷΈ߹ΘͤͰ࡞ΕΔ
w ֤ΞΫγϣϯɺϑϩʔͷೖग़ྗͰσʔλͷՃ͕Մೳ w αʔόϨε AWS Step Functions
"844UFQ'VODUJPOTͷհͱ࠾༻എܠ νʔϜํɿʮվળΛ܁Γฦ͠ɺΑΓྑ͍αʔϏεఏڙΛ࣮ݱ͢Δɻʯ ࣌৽͍͠ΈɾࣗಈԽΛ͠Α͏ͱ͢ΔͱMBNCEB͕ୈҰީิʹڍ͕͍ͬͯͨ 㱺ΠϯϑϥΤϯδχΞओମͷνʔϜʹʮMBNCEBͷอकʯݫ͍͠ 㱺࠷ѱͷ߹ɺ༗ࣝऀͷʹ͍ٕज़తͳෛ࠴ʹͳΓ͔Ͷͳ͍ʜ AWS Lambda
"844UFQ'VODUJPOTͷհͱ࠾༻എܠ "1*ΞΫγϣϯͰ͋ΕΠϯϑϥΤϯδχΞ͚ͩͰอकͰ͖ͦ͏ʂ
ࣄྫհ
ࣄྫ౿ΈαʔόͷΦϯσϚϯυىಈɾఀࢭɾঢ়ଶ֬ೝ ՝ɿ ɹɹɹຊ൪ڥͷ౿ΈαʔόΛ֎෦͔Βىಈɾఀࢭ͍ͨ͠ ɹɹɹىಈޙɺ์ஔ͞Ε͍ͯΔ౿Έαʔόͷར༻ྉΛݮ͍ͨ͠ ɹɹɹαʔό࠶ىಈͷͨͼʹ43ʹೖΔͷۤ௧ ํɿ ɹɹɹۃྗMBNCEBΛΘͳ͍ ɹɹɹ౿Έαʔό͜Ε͔Β૿͑ΔͷͰɺ֦ுੑΛ࠷େݶҙࣝͨ͠ߏʹ͢Δ
ࣄྫ౿ΈαʔόͷΦϯσϚϯυىಈɾఀࢭɾঢ়ଶ֬ೝ ʲߏ֓ཁʳ
ࣄྫ౿ΈαʔόͷΦϯσϚϯυىಈɾఀࢭɾঢ়ଶ֬ೝ ʲߏ֓ཁʳ "1*(BUFXBZΛଧ伴͢Δ
ࣄྫ౿ΈαʔόͷΦϯσϚϯυىಈɾఀࢭɾঢ়ଶ֬ೝ ʲߏ֓ཁʳ ύεຖʹ࣮ߦ͍ͨ͠ 4UFQ'VODUJPOTΛࢦఆ
ࣄྫ౿ΈαʔόͷΦϯσϚϯυىಈɾఀࢭɾঢ়ଶ֬ೝ ʲߏ֓ཁʳ ૹΒΕ͖ͯͨใΛݩʹ ౿Έαʔόʹରͯ͠ॲཧΛ࣮ߦ͢Δ
ࣄྫ౿ΈαʔόͷΦϯσϚϯυىಈɾఀࢭɾঢ়ଶ֬ೝ ʲৄࡉߏʳ ˞౿ΈαʔόͷఀࢭΛྫʹઆ໌͠·͢
ࣄྫ౿ΈαʔόͷΦϯσϚϯυىಈɾఀࢭɾঢ়ଶ֬ೝ ʲৄࡉߏʳ ౿Έαʔόͷใ JOTUBODF*% Λऔಘ
ࣄྫ౿ΈαʔόͷΦϯσϚϯυىಈɾఀࢭɾঢ়ଶ֬ೝ ʲৄࡉߏʳ ౿Έαʔό͕૿͑ͨΒ ͜͜ʹใΛొ͢Δ
ࣄྫ౿ΈαʔόͷΦϯσϚϯυىಈɾఀࢭɾঢ়ଶ֬ೝ ʲৄࡉߏʳ ౿ΈαʔόΛఀࢭͤ͞Δ
ࣄྫ౿ΈαʔόͷΦϯσϚϯυىಈɾఀࢭɾঢ়ଶ֬ೝ ʲৄࡉߏʳ ౿ΈαʔόΛىಈͳΒ4UBSU*OTUBODFɺ ঢ়ଶ֬ೝͳΒ%FTDSJCF*OTUBODFʹมߋ͢Δ͚ͩͰ0,ʂ
ࣄྫ౿ΈαʔόͷΦϯσϚϯυىಈɾఀࢭɾঢ়ଶ֬ೝ ʲৄࡉߏʳ ຊʹఀࢭ͔ͨ͠Λ֬ೝ ఀࢭ͕ࣦഊͨ͠߹௨
ࣄྫ4FDVSJUZ)VCݕग़༰Λੜ"*ʹཁɺରԠ༰Λग़ྗͤ͞ΔΈ ํɿ ɹɹɹMBNCEBۃྗΘͳ͍ ɹɹɹग़ྗ༰ଞͰར༻͢Δ߹͕͋ΔͷͰɺ4ʹอଘ͓ͯ͘͠ ɹɹɹՄೳͳΒݕग़༰Λ5FBNTʹ௨ͤ͞Δ
ࣄྫ4FDVSJUZ)VCݕग़༰Λੜ"*ʹཁɺରԠ༰Λग़ྗͤ͞ΔΈ ʲߏ֓ཁʳ
ࣄྫ4FDVSJUZ)VCݕग़༰Λੜ"*ʹཁɺରԠ༰Λग़ྗͤ͞ΔΈ ʲߏ֓ཁʳ 4FDVSJUZ)VCʹΑͬͯݕग़͞Εͨ༰Λ &WFOU#SJEHFܦ༝Ͱ4UFQ'VODUJPOTͷΠϯϓοτʹ͢Δ
ࣄྫ4FDVSJUZ)VCݕग़༰Λੜ"*ʹཁɺରԠ༰Λग़ྗͤ͞ΔΈ ʲߏ֓ཁʳ ݕग़༰Λ#FESPDLʹೖ͠ɺཁͱରԠ༰Λग़ྗɻ ݁Ռ௨Λ࣮ࢪ͠ɺ4ʹग़ྗΛஔɻ
ࣄྫ4FDVSJUZ)VCݕग़༰Λੜ"*ʹཁɺରԠ༰Λग़ྗͤ͞ΔΈ ʲߏৄࡉʳ
ࣄྫ4FDVSJUZ)VCݕग़༰Λੜ"*ʹཁɺରԠ༰Λग़ྗͤ͞ΔΈ ʲߏৄࡉʳ աڈͷݕग़༰ͱҰக͢Δ߹͔Λ֬ೝɻ Ұக͢Δ߹ੜ"*ͷ͍߹ΘͤΛ࣮ࢪ͠ͳ͍ɻ
ࣄྫ4FDVSJUZ)VCݕग़༰Λੜ"*ʹཁɺରԠ༰Λग़ྗͤ͞ΔΈ ʲߏৄࡉʳ 4FDVSJUZ)VCͷݕग़༰Λੜ"*ʹ͍߹Θͤɻ ݕग़༰ͷཁͱରԠ༰Λग़ྗͤ͞Δɻ
ࣄྫ4FDVSJUZ)VCݕग़༰Λੜ"*ʹཁɺରԠ༰Λग़ྗͤ͞ΔΈ ʲߏৄࡉʳ ग़ྗ༰ଞͷΈͰར༻͢ΔͨΊɺ 4ʹஔͨ͠ޙ5FBNTѼͯʹ௨Λ࣮ࢪɻ
ࣄྫ4FDVSJUZ)VCݕग़༰Λੜ"*ʹཁɺରԠ༰Λग़ྗͤ͞ΔΈ ʲग़ྗྫʳ 4FDVSJUZ)VCʹ࣮ͯࡍʹݕ͞ΕΔͱҎԼͷΑ͏ͳ௨͕࣮ࢪ͞Ε·͢
·ͱΊ w (6*Ͱ࡞ՄೳͳͷͰɺίʔσΟϯά͕ۤखͰ؆୯ʹͰ͖Δɻ w "1*ΞΫγϣϯ͕๛ͳͷͰଞαʔϏεͱͷΈ߹Θͤ૬ੑ͕ྑ͍ɻ w ൺֱతֶशίετ͕গͳ͘ɺࣗಈԽΛؤுΓ͍ͨΠϯϑϥΤϯδχΞ͖ɻ
"844UFQ'VODUJPOT͕ۤखͳ͜ͱ
"844UFQ'VODUJPOT͕ۤखͳ͜ͱ w େ༰ྔσʔλͷॲཧɺ݁Ռग़ྗ ɹˠೖग़ྗσʔλͷ࠷େ༰ྔ,#ͱগ͠খ͍͞ʜ ɹˠΫΥʔλҾ্͖͛ෆՄͷͨΊɺճආࡦΛϢʔβଆͰ४උ͢Δඞཁ͋Γɻ
"844UFQ'VODUJPOT͕ۤखͳ͜ͱ ࣮ߦʹඞཁͳೖྗใΛ4ʹஔ͠ɺ͔ͦ͜Βऔಘ͢Δ͜ͱͰճආՄೳɻ ʲྫʳೖྗใ͕େ͖͍߹ͷॲཧํ๏
"844UFQ'VODUJPOT͕ۤखͳ͜ͱ ग़ྗʹ͍ͭͯ4ʹ1VU͢Δ͜ͱͰճආՄೳɻ ʲྫʳೖྗใ͕େ͖͍߹ͷॲཧํ๏
"844UFQ'VODUJPOTʹ͍ͯͳ͍͜ͱ
"844UFQ'VODUJPOTʹ͍͍ͯͳ͍͜ͱ wߴසͰ࣮ߦ͞ΕΔλεΫॲཧ ɹˠ՝ۚ୯Ґ͕ঢ়ଶͷભҠʹґଘ͢ΔͨΊɺ ɹɹߴසͰ࣮ߦ͢ΔλεΫͱίετ໘Ͱ૬ੑ͕͋·Γྑ͘ͳ͍Ͱ͢ɻ