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
Ruby × AWS Lambdaで サーバーレスの導入~TUNAG分析基盤の事例をもとに~
Search
uuushiro
June 08, 2019
Technology
2
3.2k
Ruby × AWS Lambdaで サーバーレスの導入~TUNAG分析基盤の事例をもとに~
uuushiro
June 08, 2019
Tweet
Share
More Decks by uuushiro
See All by uuushiro
アウトカムに集中できる High Productivityなチームを目指して ~チームデザインとコラボレーションの取り組み事例~ / high productivity team focused on outcomes
uuushiro
0
730
スタメンのLeSSの導入と 事業部全体を巻き込んだ アウトカム文化への道のり / Introduction of LeSS and outcome culture
uuushiro
2
8k
スタートアップのプロダクト成長の舞台裏とコンテナ化までの道のり
uuushiro
0
740
Railsメジャーバージョンアップを 安全にカナリアリリースする
uuushiro
2
3.1k
プロダクトに集中し続けるために 開発組織が向き合ってきた課題
uuushiro
1
230
エンゲージメント経営を支える TUNAGのETL基盤
uuushiro
0
140
TUNAG の ETL基盤 ~AWS Summit Startup Architecture of the year 2019~
uuushiro
2
4.9k
銀座Rails#1_uuushiro.pdf
uuushiro
5
1.5k
Other Decks in Technology
See All in Technology
AIエージェントの地上戦 〜開発計画と運用実践 / 2025/04/08 Findy W&Bミートアップ #19
smiyawaki0820
3
660
「それはhowなんよ〜」のガイドライン #orestudy
77web
6
1.7k
大規模プロジェクトにおける 品質管理の要点と実践 / 20250327 Suguru Ishii
shift_evolve
0
300
問題解決に役立つ数理工学
recruitengineers
PRO
8
2.3k
お問い合わせ対応の改善取り組みとその進め方
masartz
1
490
Proxmox VE超入門 〜 無料で作れるご自宅仮想化プラットフォームブックマークする
devops_vtj
0
210
PostgreSQL Unconference #52 pg_tde
nori_shinoda
1
250
SaaSプロダクト開発におけるバグの早期検出のためのAcceptance testの取り組み
kworkdev
PRO
0
500
アプリケーション固有の「ロジックの脆弱性」を防ぐ開発者のためのセキュリティ観点
flatt_security
36
14k
AIエージェント完全に理解した
segavvy
4
310
製造業の会計システムをDDDで開発した話
caddi_eng
3
1k
Medmain FACTBOOK
akinaootani
0
130
Featured
See All Featured
Facilitating Awesome Meetings
lara
53
6.3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7.1k
Code Reviewing Like a Champion
maltzj
522
39k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.5k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.5k
Into the Great Unknown - MozCon
thekraken
36
1.7k
Docker and Python
trallard
44
3.3k
Building Applications with DynamoDB
mza
94
6.3k
Designing Experiences People Love
moore
141
23k
Agile that works and the tools we love
rasmusluckow
328
21k
Rails Girls Zürich Keynote
gr2m
94
13k
Transcript
3VCZº"84-BNCEBͰ αʔόʔϨεͷಋೖ /BHPZB3VCZ,BJHJ 56/"(ੳج൫ͷࣄྫΛͱʹ :VTIJSP.BUTVUBOJ!VVVTIJSP
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE ࣗݾհ 2 Yushiro Matsutani Twitter/GitHub @uuushiro 2016.9 גࣜձࣾελϝϯͰΠϯλʔϯ։࢝
2017.1 גࣜձࣾελϝϯʹೖࣾʢ৽ଔୈ1߸ʣ ݱࡏج൫νʔϜ Rubyྺ͏͙͢3͘Β͍ ॳΊͯ৮ͬͨRailsͷόʔδϣϯ5.0
ձ ࣾ ֓ ཁ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE גࣜձࣾελϝϯ 4 w݄ʹۀ ݄ઃཱ w໊ࣾ4UBS.FNCFSTʹ༝དྷ wຊ໊ࣾݹ ُౡӺ
ࢧࣾޒాɺകాɺԬ w৬һ໊ ϓϩμΫτ෦໊ w56/"(ͷاըɺ։ൃɺӡ༻
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 56/"(ͱ 5 wձࣾͱࣾһɺࣾһಉ࢜ͷ৴པؔߏஙΛతͱͨ͠اۀ͚4/4 w݄ʹϦϦʔε͠ɺಋೖاۀΛ͑Δ wۀ࿈བྷͰͳ͘ɺ͓ޓ͍ΛΓཧղ͢Δ͜ͱ͕త wlࣾ4/4͍͠zΛɺίϯαϧςΟϯάͱz੍ࣾzͰղܾ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE ڈͷ݄ʹ"84-BNCEB͕3VCZʹରԠ 6
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE "84-BNCEBͱʁ 7 w'VODUJPOTBTB4FSWJDF wαʔόʔͷཧແ͠ͰίʔυΛ࣮ߦͰ͖Δ wैྔ՝੍ۚ wࣗಈͰεέʔϧΞτ IUUQTEPDTBXTBNB[PODPNKB@KQMBNCEBMBUFTUEHXFMDPNFIUNM
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 3VCZ,BJHJʹͯ 8
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 3VCZ,BJHJʹͯ 9
3VCZº"84-BNCEBͷ ཧϑϨʔϜϫʔΫɾࣗಈςετʹ͍ͭͯ ։ൃɾӡ༻دΓͷΛ͠·͢
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE ΞδΣϯμ 11 ཧϑϨʔϜϫʔΫΛར༻ͨ͠։ൃ αʔόʔϨε׆༻ͷഎܠ ࣗಈςετ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE ΞδΣϯμ 12 ཧϑϨʔϜϫʔΫΛར༻ͨ͠։ൃ αʔόʔϨε׆༻ͷഎܠ ࣗಈςετ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 56/"(ͷچੳج൫ͷ՝ 13 㾎σʔλ૿Ճ͠ॲཧ͕࣌ؒ૿େ 㾎ूܭ༻αʔόʔ &$ ͷӡ༻ίετ͕͔͔Δ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE "84-BNCEBͰղܾͦ͠͏ 14 w"84-BNCEBͰมॲཧΛฒྻॲཧ࣌ؒ͠ॖ w&$Λ"84-BNCEBʹஔ͖͑ӡ༻ίετͷݮ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE ৽ج൫ʹ͓͚Δ -BNCEBͷར༻Πϝʔδ 15 w"84αʔϏεؒͷ ணࡎͱͯ͠͏ w3VCZͰ42-Λ ಈతʹΈཱͯΔ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE ΞδΣϯμ 16 ཧϑϨʔϜϫʔΫΛར༻ͨ͠։ൃ αʔόʔϨε׆༻ͷഎܠ ࣗಈςετ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE αʔόʔϨεΞϓϦέʔγϣϯͷཧ͕େม 17 wෳͷ"84-BNCEBͷཧ͕ࡶ wσϓϩΠʹख͕͔͔ؒΔ w(FNڞ௨ίʔυͷѻ͍͕Α͘Θ͔Βͳ͍
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE "844FSWFSMFTT"QQMJDBUJPO.PEFM "844". 18 wαʔόʔϨεΞϓϦέʔγϣϯͷཧϑϨʔϜϫʔΫ w$MPVE'PSNBUJPOͷ֦ு wϩʔΧϧͰ"84-BNCEBͷߏஙɾςετɾσόοά͕Մೳ wΞϓϦέʔγϣϯͷϏϧυɾύοέʔδϯάɾσϓϩΠίϚϯυΛఏڙ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 4".ͷ༻ྫ3VCZͷαϯϓϧΞϓϦέʔγϣϯ 19
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE 4".ͷ༻ྫ3VCZͷαϯϓϧΞϓϦέʔγϣϯ 20 wରؔͷϑΥϧμͷ[JQϑΝΠϧΛ࡞͠4Ξοϓϩʔυ wQBDLBHFEZBNMΛ࡞͠ϩʔΧϧͷੜͷࢀরΛ Ξοϓϩʔυͨ͠4ͷ63-ʹஔ͖͑Δ wςϯϓϨʔτʹهड़͞Ε͍ͯΔ௨ΓͷϦιʔε͕ߏங͞ΕΔ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE -BNCEBͷ࣮ߦڥΛ λʔήοτͱ͢ΔՌΛੜ ґଘؔͷղܾ 21 ՌΛBXTTBNCVJMEԼʹ࡞ (FNpMFʹԠͯ͡ҎԼ͕࣮ߦ͞ΕΔ "84-BNCEBͰWFOEPSCVOEMF͕ HFNͷ୳ࡧσΟϨΫτϦର
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE OBUJWFFYUFOUJPOͷѻ͍OPLPHJSJ 22 wωΠςΟϒ֦ு͕͋Δ(FNɺ-BNCEBͱ ಉڥͰίϯύΠϧ͢Δඞཁ͕͋Δ wOPLPHJSJ͕ґଘ͍ͯ͠ΔMJCYNMͱMJCYTMU -BNCEBͷΠϝʔδʹؚ·Ε͍ͯΔͷͰɺҎԼͰ ϏϧυՄೳ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE OBUJWFFYUFOUJPOͷѻ͍NZTRM 23 wNZTRM͕ґଘ͍ͯ͠ΔNZTRMEFWFM-BNCEBͷ Πϝʔδʹؚ·Ε͍ͯͳ͍ w-BNCEBΠϝʔδίϯςφͰඞཁͳύοέʔδΛ Πϯετʔϧ্ͨ͠ͰCVOEMFJOTUBMMΛ͢Δ wඞཁͳڞ༗ϥΠϒϥϦ MJCNZTRMDMJFOU
ɺ -%@-*#3"3:@1"5)ʹஔ͢Δ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE ڞ௨ίʔυ(FNΛ͏·͘ѻ͍͍ͨ 24 wෳͷ-BNCEBͰڞ௨ͷ3VCZίʔυ (FN͕ଘࡏ ͦΕͧΕσϓϩΠύοέʔδʹؚΊͳ͚ΕͳΒͳ͍ wίʔυΛมߋ͢Δͨͼʹґଘؔͷ Ξοϓϩʔυ͕ඞཁ
(FNͱΞϓϦέʔγϣϯίʔυมߋͷपظҟͳΔ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE "84-BNCEB-BZFST 25 w ෳͷ"84-BNCEBͰίʔυΛڞ༗Ͱ͖ΔΈ w -BNCEBΛݺͼग़͢ͱ-BZFST͕ίϯςφͷPQUԼʹϚϯτ͞ΕΔ w TBNCVJMEݱ࣌ͰඇରԠ
IUUQTBXTBNB[PODPNKQCMPHTDPNQVUFXPSLJOHXJUIBXTMBNCEBBOEMBNCEBMBZFSTJOBXTTBN
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE "84-BNCEB-BZFSTͷϝϦοτ 26 wؔίʔυͷαΠζ͕খ͘͞ͳΔ wґଘؔͱϏδωεϩδοΫͷؒͰɺؔ৺ࣄͷΛڧ੍ IUUQTBXTBNB[PODPNKQCMPHTDPNQVUFXPSLJOHXJUIBXTMBNCEBBOEMBNCEBMBZFSTJOBXTTBN
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE ڞ௨ίʔυ༻-BZFST 27 IUUQTHJUIVCDPNBXTMBCTBXTMBNCEBDPOUBJOFSJNBHFDPOWFSUFS -BZFSTʹ͓͚Δ3VCZϥΠϒϥϦͷ୳ࡧύε
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE (FN༻-BZFST 28 IUUQTHJUIVCDPNBXTMBCTBXTMBNCEBDPOUBJOFSJNBHFDPOWFSUFS -BZFSTʹ͓͚ΔHFNͷ୳ࡧύε
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE JNHMBNCEBΛͬͨ -BZFSTͷσϓϩΠ ͓·͚ 29 w %PDLFSΠϝʔδΛ-BNCEB -BZFSTʹม͠σϓϩΠ w
ґଘؔΛΠϝʔδʹด͡ࠐΊ มߋ͕͋Ε࠶Ϗϧυ w ศར͕ͩ4".ͷ ϩʔΧϧ࣮ߦ -BZFSTؚΊͨ ͕ ׆͔ͤͳ͍ͷͰࠓճෆ࠾༻ IUUQTHJUIVCDPNBXTMBCTBXTMBNCEBDPOUBJOFSJNBHFDPOWFSUFS
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE "844".Λར༻ͨ͠։ൃ·ͱΊ 30 wෳͷ-BNCEBςϯϓϨʔτͰҰݩཧ wσϓϩΠTBNDMJͰίϚϯυͰ؆୯ʹ wґଘؔTBNCVJMEίϚϯυͰղܾ ඞཁʹԠͯ͡-BNCEBͷ%PDLFSΠϝʔδΛར༻ wڞ௨ίʔυ(FN-BZFSTͰڞ༗Մೳ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE ΞδΣϯμ 31 ཧϑϨʔϜϫʔΫΛར༻ͨ͠։ൃ αʔόʔϨε׆༻ͷഎܠ ࣗಈςετ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE ࣗಈςετͷํ 32 w-BNCEBଞͷαʔϏεͱͷ࿈ܞ͕ଟ͘ ౷߹ςετ͕ॏཁʹͳΔ wΫϥυ্Ͱͷݕূֻ͕͔࣌ؒΓա͗ΔͷͰ ͳΔ͘ϩʔΧϧͰ࣮ߦɾςετ͍ͨ͠ w*".ݖݶͳͲͷςετΫϥυ্Ͱߦ͏
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE ϩʔΧϧςετ 33 w"84-BNCEBͷґଘΛഉআ͠ ୯ମςετΛ͍͢͠Α͏ʹ w"84αʔϏεʹґଘ͢ΔϩδοΫελϒΛར༻ wϩʔΧϧʹ-BNCEBͷΤϯυϙΠϯτΛىಈ͠ -BNCEBɾ-BZFSTΛςετ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE ςετͷྫ"UIFOBͷΫΤϦ͕ࣦഊͨ͠έʔε 34 "UIFOBͷΫΤϦ࣮ߦ"1*Λୟ͘ ΫΤϦඇಉظతʹॲཧ͞ΕΔͨΊ ࣮ߦ*%Λͱʹ࣮ߦঢ়گΛ͍߹ΘͤΔ ΫΤϦͷ݁ՌΛऔಘ͠ঢ়ଶ͕ l'"*-&%zͳΒྫ֎Λ͛Δ 1
2 3
!35 "844%,GPS3VCZΛͬͯ "UIFOBͷΫΤϦΛ࣮ߦ͢Δ"1*Λୟ͘ 1
!36 "844%,GPS3VCZΛͬͯ "UIFOBͷΫΤϦΛ࣮ߦ͢Δ"1*Λୟ͘ ΫΤϦ࣮ߦ*%Λͱʹ ࣮ߦঢ়گΛ͍߹ΘͤΔ 1 2
!37 "844%,GPS3VCZΛͬͯ "UIFOBͷΫΤϦΛ࣮ߦ͢Δ"1*Λୟ͘ ΫΤϦ࣮ߦͷ εςʔλε͍߹Θͤ݁Ռ͕ '"*-&%ʹͳͬͨΒྫ֎Λ͛Δ ΫΤϦ࣮ߦ*%Λͱʹ ࣮ߦঢ়گΛ͍߹ΘͤΔ 1 2
3
!38 ϋϯυϥʔͷҾͳͲ -BNCEBʹґଘ͢ΔՕॴ͔Β ϩδοΫΛΓ͢
!39 -BNCEBʹґଘ͠ͳ͍ίʔυʹͳΓ ී௨ʹςετͰ͖Δ
!40 "84αʔϏεʹґଘ͢ΔϩδοΫΛ Ͳ͏ςετ͢Δ͔ʁ
!41 "84αʔϏεʹґଘ͢ΔϩδοΫΛ Ͳ͏ςετ͢Δ͔ʁ ελϒΛͼࠐ·ͤΔ༨Λ༩͑Δ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE "844%,GPS3VCZͷελϒػೳ 42 w"1*ΞΫηεͷϨεϙϯεɾΤϥʔΛελϒ͢Δ w"84"1*ΫϥΠΞϯτΛ࣮ߦ͢ΔΑ͏ʹৼΔ͏ w-PDBM4UBDL͍͍͕ɺࠓճඞཁͳ"84"UIFOBɾ(MVF ඇαϙʔτͩͬͨ 5FTUBCMF-BNCEB
!U@XBEB ͕ͱͯࢀߟʹͳΔ IUUQTTQFBLFSEFDLDPNUXBEBUFTUBCMFMBNCEBXPSLJOHF⒎FDUJWFMZXJUIMFHBDZMBNCEB
!43 ελϒػೳΛ༗ޮʹ
!44 "UIFOBΫΤϦ࣮ߦͷ ϨεϙϯεσʔλΛ࡞ "UIFOBΫΤϦ࣮ߦͷ Ϩεϙϯεʹઃఆ
!45 "UIFOBΫΤϦ ࣮ߦঢ়گ͕z'"*-&%zͷ σʔλΛ࡞ ΫΤϦ࣮ߦঢ়گ֬ೝϦΫΤετͷ ϨεϙϯεʹϑΣΠΫͷ݁ՌΛઃఆ
!46 ελϒΦϒδΣΫτΛ ҾͰ͢ ϩʔΧϧͰ"84αʔϏε ґଘͷςετ͕Ͱ͖ͨ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE ϩʔΧϧͰ"84-BNCEBɾ-BZFSTͷςετ 47 ϩʔΧϧͰ-BNCEBͷΤϯυϙΠϯτΛىಈ ΤϯυϙΠϯτΛϩʔΧϧʹ͚Δ -BZFSTΛؚΊͨςετ͕ ϩʔΧϧͰ࣮ߦՄೳʹ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE $*$% 48 w$PEF%FQMPZͷ1SF)PPLؔΛར༻͠؆қͳ౷߹ςετΛ࣮ߦ w1SF)PPLؔͰɺ৽WFSͷ-BNCEBΛ࣮ߦ wΤϥʔ͕͋ΕϩʔϧόοΫ
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE ৽ੳج൫ΞʔΩςΫνϟ 49
$PQZSJHIUTUNO JOD"MMSJHIUTSFTFSWFE ·ͱΊ 50 w-BNCEB͕3VCZରԠͨ͜͠ͱͰαʔόʔϨε͕ ελϝϯʹͱͬͯۙͳͷʹͳͬͨ wཧϑϨʔϜϫʔΫͷ͓͔͛Ͱӡ༻ָ͕ʹ wͳΔ͘ϩʔΧϧͰςετ͢Δ͜ͱͰ։ൃ61