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
Cloud Runでシステムを作るためのアーキテクチャのTipsとコストの話
Search
Keke
December 14, 2019
Technology
3
1.4k
Cloud Runでシステムを作るためのアーキテクチャのTipsとコストの話
@ServerlessDays Fukuoka 2019
Keke
December 14, 2019
Tweet
Share
More Decks by Keke
See All by Keke
リモートワークを支える勤怠管理 ~プラットフォームとしてのSlackの活用 ~
keisukeyamashita
0
610
Serving GitHub Actions Self-Hosted Runner as a Platform (Part 1: Introduction)
keisukeyamashita
0
330
Serverlessを取り巻く現状とAll Serverlessでプロダクトを構築する苦労
keisukeyamashita
10
3k
Spinnakerで実践するマイクロサービスの 安全なリリースフローとベストプラクティス
keisukeyamashita
3
1k
Spinnaker Application management by Terraform Plugins
keisukeyamashita
2
820
Open Policy AgentとSpinnakerで実現するマイクロサービスの安全な継続的デリバリー
keisukeyamashita
8
6.1k
How to develop a custom Terraform provider@Merpay SRE Tech Talk
keisukeyamashita
0
390
Introduction to Spinnaker Managed Pipeline Templates
keisukeyamashita
3
6.4k
Deep Dive HCL@Terraform Meetup #3
keisukeyamashita
1
1.8k
Other Decks in Technology
See All in Technology
AWSへのNIST SP800-171管理策 導入に向けての整備/20240930 Mitsutoshi Matsuo
shift_evolve
0
200
【swonet.conf_】NOCメンバーが語るSTMの実態!! ~ShowNetから若者への贈り物~
shownet
PRO
0
290
軽いノリで"自動化"に取り組んではいけないという話
tetsuyaooooo
1
460
スクラム導入の舞台裏:QAエンジニアがスクラムマスターになるまで
bubo1201
0
170
XP matsuri 2024 - 銀河英雄伝説に学ぶ
kawaguti
PRO
3
560
Strict Concurrencyにしたらdeinitでクラッシュする話
0si43
0
120
OPENLOGI Company Profile for engineer
hr01
1
12k
小さな勉強会の始め方、広げ方、あるいは友達の作り方 / How to Start, Grow, and Build Connections with Small Study Groups
ar_tama
6
2.4k
【shownet.conf_】トポロジ図の歩き方
shownet
PRO
0
480
TypeScript x Raycast x AIで変える開発者体験
nagauta
0
180
普通の Web エンジニアのための様相論理入門 #yapcjapan / YAPC Hakodate 2024
ytaka23
5
1.3k
テストコードの品質を客観的な数値で担保しよう〜Mutation Testのすすめ〜
ysknsid25
11
3.1k
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
93
13k
How GitHub Uses GitHub to Build GitHub
holman
473
290k
Automating Front-end Workflow
addyosmani
1365
200k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
130k
What the flash - Photography Introduction
edds
67
11k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Statistics for Hackers
jakevdp
796
220k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
125
18k
Why You Should Never Use an ORM
jnunemaker
PRO
53
9k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
32k
GraphQLとの向き合い方2022年版
quramy
43
13k
Transcript
None
$MPVE3VO͚ͩ͡Όͳͯ͘ 4FSWFSMFTTશൠʹ͍͑ΔͩΑʂʂʂʂʂ
“Cloud RunͰαʔϏεΛ࡞ΔͨΊͷ ΞʔΩςΫνϟͷTipsͱίετͷ” 4FWFSMFTT%BZT'VLVPLB ,FLF5XJUUFS!@L@F@L@F
“About me” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“About me” Keke Twitter: @_k_e_k_e New Grad Merpay SRE team
Hobby: Reading Novels, Comics Attended KubeCon 2019 NA Born in Yamaguchi l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
Α͘തଟʹ༡ͼʹདྷͯͨɺΘΓ͔͠ϗʔϜʂʂʂ “About me” Keke Twitter: @_k_e_k_e New Grad Merpay SRE
team Hobby: Reading Novels, Comics Attended KubeCon 2019 NA Born in Yamaguchi l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“Session’s Goal” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“Sessions Goal” ServerlessͰαʔϏεΛ࡞ΔͨΊͷ࣮༻తͳArchitectureͰ͋Δ Serverless ArchitectureΛఆٛ͢Δ͜ͱɻ ͲͷΑ͏ͳ؍ͰCloud RunΛ͡Ίͱ͢ΔServerlessͰ αʔϏεΛߏங͍͚͍͍ͯ͠ͷ͔TipsΛఏڙ͢Δ͜ͱɻ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F
z
“Agenda” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
3. WIASʹ͓͚ΔServerlessΞϓϦέʔγϣϯͷ(ࣦഊ)ࣄྫ 4. ΞʔΩςΫνϟͷTips 2. Serverless Architectureʹ͍ͭͯ 1. ServerlessͷύϥμΠϜ 5.
Takeaway 0. Cloud Runͱ “Agenda” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“0. Cloud Runͱ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“Cloud Runͱ” GCPͰఏڙ͞Ε͍ͯΔKnativeΛϕʔεͱͨ͠Container as a Service Docker ImageΛ࡞ͬͯࢦఆ͢Δ͚ͩͰApplication͕࡞ΕΔ
“Cloud Runͱ” GCPͰఏڙ͞Ε͍ͯΔKnativeΛϕʔεͱͨ͠Container as a Service Docker ImageΛ࡞ͬͯࢦఆ͢Δ͚ͩͰApplication͕࡞ΕΔ ݺͼग़͠ճ ίϯϐϡʔλϦιʔε
ˠΞΠυϧ࣌՝ۚ͞Εͳ͍ ճͷݺͼग़͠՝ۚඵͷW$16
“1. ServerlessͷύϥμΠϜ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ServerlessͷύϥμΠϜ” 3. ։ൃʹूதͰ͖Δ 4. ߴՄ༻ੑ 2. ࣗಈεέʔϧ 1. ϑϧϚωʔδυͳΞϓϦέʔγϣϯ࣮ߦڥͷఏڙ Serverless
PaaSͷಛ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z ͳͲʜ
“ServerlessͷϓϩμΫτਐԽ͖ͯͨ͠” “ServerlessͷύϥμΠϜ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ServerlessͷύϥμΠϜ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
Gartner Hype Cycle for Cloud Computing, 2018 https://pages.awscloud.com/Analyst_Reports_Gartner-Hype-Cycle-for-Cloud-Computing.html?trk=ar_card ࣮༻ੑʹର͢Δ ظײ
“ظ……” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“͍͚͢͝ͲɺͦΕͰͲ͏ͬͯαʔϏεΛ࡞Ε͍͍ͷʁ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
None
“ServerlessͷύϥμΠϜ” ServerlessҰͭͷπʔϧͰ͋ͬͯɺ࣮ࡍ ʹαʔϏεΛͲͷΑ͏ʹ࡞Ε͍͍ͷ͔ Λ͑ͯ͘ΕΔͷͰͳ͍ l4FSWFSMFTT4UBUFPG.JOEz https://read.acloud.guru/serverless-is-a-state-of-mind-717ef2088b42 l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ServerlessͷύϥμΠϜ” ServerlessҰͭͷπʔϧͰ͋ͬͯɺ࣮ࡍʹ αʔϏεΛͲͷΑ͏ʹ࡞Ε͍͍ͷ͔Λ ͑ͯ͘ΕΔͷͰͳ͍ ͲͷΑ͏ʹServerlessͷ༗༻ੑΛڗड͢ Δͷ͔ɺ࣮༻ੑͱݟ͕ٻΊΒΕ͍ͯΔ l4FSWFSMFTT4UBUFPG.JOEz https://read.acloud.guru/serverless-is-a-state-of-mind-717ef2088b42 l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F
z
“2. Serverless Architecture” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z “Serverless is not Serverless Architecture” “2. Serverless
Architecture”
“ServerlessͰαʔϏεΛ ࡞ΔͨΊͷArchitecture” “2. Serverless Architecture” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“2. Serverless Architecture” Serverless Architecture, 2019 https://noti.st/jlbutler/gOz4kq/serverless-patterns
“2. Serverless Architecture” Serverless Architecture, 2019 https://noti.st/jlbutler/gOz4kq/serverless-patterns Ϋϥυ ϚΠΫϩαʔϏεΞʔΩςΫνϟ
“2. Serverless Architecture” Serverless Architecture, 2019 https://noti.st/jlbutler/gOz4kq/serverless-patterns Ϋϥυ ϚΠΫϩαʔϏεΞʔΩςΫνϟ αʔόʔϨεΞʔΩςΫνϟ
“2. Serverless Architecture” l.JDSPTFSWJDFTz https://martinfowler.com/articles/microservices.html l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“2. Serverless Architecture” “Microservice architecture͕microserviceΛఆٛ͢Δ” l.JDSPTFSWJDFTz https://martinfowler.com/articles/microservices.html l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“2. Serverless Architecture” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“2. Serverless Architecture” “Serverless͕Serverless architectureΛఆٛ͢Δ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“2. Serverless Architecture” 4FSWFSMFTT͕༗༻ͳྖҬ 4FSWFSMFTT͕͑ΔྖҬ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z ServerlessGCEͳͲΛஔ͖͑Δ͜ͱ Ͱ͖Δ͕ɺ༗༻ੑ͕͋Δͷ͔͕ջٙత
“Serverless͕Serverless architectureΛఆٛ͢Δ”
“WIASʹ͓͚ΔServerlessͷࣄྫ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“WIASʹ͓͚ΔServerlessͷࣄྫ” “WIASͬͯʁ” “Wi-Fi Attendance System” “Wi-FiʹΑΔۈଵଧࠁγεςϜ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z l4FWFSMFTT%BZT'VLVPLB,FLF
5XJUUFS!@L@F@L@F z
“WIASʹ͓͚ΔServerlessͷࣄྫ” “WIASͬͯʁ” “Wi-Fi Attendance System” “Wi-FiʹΑΔۈଵଧࠁγεςϜ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z l4FWFSMFTT%BZT'VLVPLB,FLF
5XJUUFS!@L@F@L@F z ৄࡉ ʮࣾһମݧʯΛٻͨ͠8J'JଧࠁγεςϜ8*"4Λ։ൃɺϝϯςφϯε͍ͯ͠Δʯ https://tech.mercari.com/entry/2019/08/30/100000
“WIASʹ͓͚ΔServerlessͷࣄྫ” “WIASͬͯʁ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z όοΫΤϯυΛ4FSWFSMFTTͰߏ
“WIASʹ͓͚ΔServerlessͷࣄྫ” “WIASͬͯʁ” ࠷ॳͷଓΛʮग़ۈʯଧࠁ ࠷ޙͷଓΛʮୀۈʯଧࠁ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z όοΫΤϯυΛ4FSWFSMFTTͰߏ
“ServerlessͰΔͱ͍͍ͩΖ͏” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“20198݄ͷίετ” $MPVE3VO 1VC4VC 'VODUJPOT l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z ($&Ͱ͏ͱສ͘Β͍ʹऩ·Δͱࢼࢉɻ 4FSWFSMFTTͰͬͱ҆͘Ͱ͖Δͱࢥͬͨͷʹʜ
“҆ͳࢥ͍ࠐΈ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
3. ։ൃʹूதͰ͖Δ 4. ߴՄ༻ੑ 2. ࣗಈεέʔϧ 1. ϑϧϚωʔδυͳΞϓϦέʔγϣϯ࣮ߦڥͷఏڙ Serverless PaaSͷಛ
l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z ͳͲʜ “҆ͳࢥ͍ࠐΈ”
“҆ͳࢥ͍ࠐΈ” “Serverlessͷಛͱͯ͠ࣄ࣮” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“҆ͳࢥ͍ࠐΈ” “Serverlessͷಛͱͯ͠ࣄ࣮” “Serverless ArchitectureͷಛͰͳ͍ͨΊ αʔϏεΛServerlessͰߏͨ͠ͱͯ͠ ServerlessͷϝϦοτ͕ඞͣ׆͖ͯ͘ΔΘ͚Ͱͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ServerlessͰαʔϏεΛ࡞Δ͜ͱΛݟͭΊͨ͠ɻ ͦͯ͠ɺTipsΛݟ͚͖ͭͯͨɻ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“201911݄ͷPubSubͷϝοηʔδ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z Πϕϯτ ΞΫηε Λ͏·͘දݱ͍ͯ͠Δ
“201911݄ͷίετ” $MPVE3VO 1VC4VC 'VODUJPOT l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“201911݄ͷίετ” $MPVE3VO 1VC4VC 'VODUJPOT Ϣʔβʔ̍ਓ͋ͨΓԁ݄ શମίετΛΧοτ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“201911݄ͷίετ” $MPVE3VO 1VC4VC 'VODUJPOT Ϣʔβʔ̍ਓ͋ͨΓԁ݄ શମίετΛΧοτ %FW 1SPEڥ߹Θͤͯ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F
z
“ΞʔΩςΫνϟͷTipsͱίετ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“Serverless Architecture’s Practice” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΠϕϯτΛߜΔ͜ͱʹྗ͢Δ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "1*3FRVFTU "1*3FTQPOTF "1*3FTQPOTF "QQ "QQ "1*3FRVFTU "1*3FTQPOTF "QQ
ʜ "1*3FRVFTU "1*3FTQPOTF "QQ/ “ΠϕϯτΛߜΔ͜ͱʹྗ͢Δ” ՝ֹۚ ≒ Πϕϯτ × ίϯϙʔωϯτ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "1*3FRVFTU "1*3FTQPOTF "1*3FTQPOTF "QQ "QQ "1*3FRVFTU "1*3FTQPOTF "QQ
ʜ "1*3FRVFTU "1*3FTQPOTF "QQ/ “ΠϕϯτΛߜΔ͜ͱʹྗ͢Δ” ՝ֹۚ ≒ Πϕϯτ × ίϯϙʔωϯτ Πϕϯτ͕ൃՐ͢ΔτϦΨʔΛݟ͢ͳͲ ίϯϙʔωϯτͷํ๏Λߟ͑͢ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "1*3FRVFTU "1*3FTQPOTF "1*3FTQPOTF "QQ "QQ "1*3FRVFTU "1*3FTQPOTF "QQ
ʜ "1*3FRVFTU "1*3FTQPOTF "QQ/ “ΠϕϯτΛߜΔ͜ͱʹྗ͢Δ” ՝ֹۚ ≒ Πϕϯτ × ίϯϙʔωϯτ Πϕϯτ͕ൃՐ͢ΔτϦΨʔΛݟ͢ͳͲ ίϯϙʔωϯτͷํ๏Λߟ͑͢ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z “20198݄ͷίετ” $MPVE3VO 1VC4VC 'VODUJPOT
l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z “20198݄ͷίετ” $MPVE3VO 1VC4VC 'VODUJPOT ৗʹΠϕϯτʢΞΫηεʣ͕ൃੜ͍ͯ͠Δ
“WIASʹ͓͚ΔServerlessͷࣄྫ” “WIASͬͯʁ” ࠷ॳͷଓΛʮग़ۈʯଧࠁ ࠷ޙͷଓΛʮୀۈʯଧࠁ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z ͜͜ͷϝοηʔδʹґଘ͢Δ
“WIASʹ͓͚ΔServerlessͷࣄྫ” “WIASͬͯʁ” ࠷ॳͷଓΛʮग़ۈʯଧࠁ ࠷ޙͷଓΛʮୀۈʯଧࠁ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z ৗற͕ఆظతʹΞΫηεΛ͍ͯͨ͠ ͜͜ͷϝοηʔδʹґଘ͢Δ
“WIASʹ͓͚ΔServerlessͷࣄྫ” “WIASͬͯʁ” ࠷ॳͷଓΛʮग़ۈʯଧࠁ ࠷ޙͷଓΛʮୀۈʯଧࠁ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z ৗற͕ఆظతʹΞΫηεΛ͍ͯͨ͠
“WIASʹ͓͚ΔServerlessͷࣄྫ” “ϛυϧΣΞͷػೳ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z ରϢʔβʔԽΛ$MPVE42-1SPYZΛ௨ͯ֬͠ೝ͢Δ *T6TFS
“WIASʹ͓͚ΔServerlessͷࣄྫ” “ϛυϧΣΞͷػೳ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z ରϢʔβʔԽΛ$MPVE42-1SPYZΛ௨ͯ֬͠ೝ͢Δ *T6TFS -36$BDIFʹΑͬͯΩϟογϡΛ͢Δ &WFOUT .FTTBHF
ৄࡉ-36$BDIF*NQMFNFOUBUJPO https://www.geeksforgeeks.org/lru-cache-implementation/
“WIASʹ͓͚ΔServerlessͷࣄྫ” “ϛυϧΣΞͷػೳ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z ରϢʔβʔԽΛ$MPVE42-1SPYZΛ௨ͯ֬͠ೝ͢Δ *T6TFS -36$BDIFʹΑͬͯΩϟογϡΛ͢Δ .FTTBHF ىͱͳΔϝοηʔδͷΛݮ
ৄࡉ-36$BDIF*NQMFNFOUBUJPO https://www.geeksforgeeks.org/lru-cache-implementation/ &WFOUT
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "1*3FRVFTU "1*3FTQPOTF "1*3FTQPOTF "QQ "QQ "1*3FRVFTU "1*3FTQPOTF "QQ
ʜ "1*3FRVFTU "1*3FTQPOTF "QQ/ “ΠϕϯτΛߜΔ͜ͱʹྗ͢Δ” ՝ֹۚ ≒ Πϕϯτ × ίϯϙʔωϯτ Πϕϯτ͕ൃՐ͢ΔτϦΨʔΛݟ͢ͳͲ ίϯϙʔωϯτͷํ๏Λߟ͑͢ ޙड़ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "1*3FRVFTU "1*3FTQPOTF "1*3FTQPOTF "QQ "QQ "1*3FRVFTU "1*3FTQPOTF "QQ
ʜ "1*3FRVFTU "1*3FTQPOTF "QQ/ “ΠϕϯτΛߜΔ͜ͱʹྗ͢Δ” ՝ֹۚ ≒ Πϕϯτ × ίϯϙʔωϯτ Πϕϯτ͕ൃՐ͢ΔτϦΨʔΛݟ͢ͳͲ ίϯϙʔωϯτͷํ๏Λߟ͑͢ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z Πϕϯτ ϑϩʔͷεςοϓ ͦͦ࠷ॳͷΠϕϯτ͕গͳ͍͜ͱ Πϕϯτ͕ݮਰ͢Δ͜ͱ
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "1*3FRVFTU "1*3FTQPOTF "1*3FTQPOTF "QQ "QQ "1*3FRVFTU "1*3FTQPOTF "QQ
ʜ "1*3FRVFTU "1*3FTQPOTF "QQ/ “ΠϕϯτΛߜΔ͜ͱʹྗ͢Δ” ՝ֹۚ ≒ Πϕϯτ × ίϯϙʔωϯτ Πϕϯτ͕ൃՐ͢ΔτϦΨʔΛݟ͢ͳͲ ίϯϙʔωϯτͷํ๏Λߟ͑͢ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z Πϕϯτ ϑϩʔͷεςοϓ ͦͦ࠷ॳͷΠϕϯτ͕গͳ͍͜ͱ Πϕϯτ͕ݮਰ͢Δ͜ͱ Πϕϯτ͕Լ͕Δͱ ɾݺͼग़͠ճ ɾىಈ͞ΕΔίϯϙʔωϯτ͕Լ͕Δ Πϕϯτ࠷େͷϘτϧωοΫ
“ಉظతͳػೳ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” “ಉظతͳػೳ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” "QQ "QQ “ಉظతͳػೳ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "QQ "QQ “ಉظతͳػೳ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "QQ "QQ ՝ۚର “ಉظతͳػೳ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "QQ "QQ ՝ۚର "1*3FRVFTU “ಉظతͳػೳ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "QQ "QQ ՝ۚର "1*3FRVFTU ՝ۚର “ಉظతͳػೳ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F
z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "QQ "QQ ՝ۚର "1*3FRVFTU ՝ۚର “ಉظతͳػೳ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F
z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "QQ "QQ ՝ۚର "1*3FRVFTU "1*3FTQPOTF “ಉظతͳػೳ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F
z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "QQ "QQ ՝ۚର "1*3FRVFTU "1*3FTQPOTF “ಉظతͳػೳ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F
z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "1*3FRVFTU "1*3FTQPOTF "1*3FTQPOTF "QQ "QQ “ಉظతͳػೳ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F
z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "1*3FRVFTU "1*3FTQPOTF "1*3FTQPOTF "QQ "QQ ՝ۚର “ಉظతͳػೳ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF
5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "1*3FRVFTU "1*3FTQPOTF "1*3FTQPOTF "QQ "QQ ՝ۚର “ಉظతͳػೳ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF
5XJUUFS!@L@F@L@F z ՝ۚର ՝ۚର
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "1*3FRVFTU "1*3FTQPOTF "1*3FTQPOTF "QQ "QQ "1*3FRVFTU "1*3FTQPOTF "QQ
ʜ "1*3FRVFTU "1*3FTQPOTF "QQ/ ՝ۚର “ಉظతͳػೳ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z ՝ۚର ՝ۚର ՝ۚର ՝ۚର
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "1*3FTQPOTF #JH"QQ “ಉظతͳػೳ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "1*3FTQPOTF #JH"QQ “ಉظతͳػೳ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z ɾݺͼग़͠ճͷݮগ ɾىಈ͞ΕΔίϯϙʔωϯτ͕Լ͕Δ
ɾ ແବͳ ܭࢉͷ࣌ؒݮগ
l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z “ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "1*3FRVFTU "1*3FTQPOTF "1*3FTQPOTF "QQ "QQ
"1*3FRVFTU "1*3FTQPOTF "QQ ʜ "1*3FRVFTU "1*3FTQPOTF "QQ/ “ಉظతͳػೳ͠ͳ͍” º º º ʹ ͢Δͱ৴པੑͷ୲อʹ͕͍Δ
“ServerlessػೳΛͰ͖ΔΜͰ͠ΐ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ServerlessػೳΛͰ͖ΔΜͰ͠ΐ” # → ίετ͕͔͔ͬͪΌ͏ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ServerlessػೳΛͰ͖ΔΜͰ͠ΐ” # “ඇಉظతͳػೳ্ख͍͘͘ʁ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ServerlessػೳΛͰ͖ΔΜͰ͠ΐ” # “ඇಉظతͳػೳ্ख͍͘͘ʁ” $ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "QQ "QQ “ಉظతͳػೳ͠ͳ͍” ՝ۚର l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "QQ "QQ "1*3FTQPOTF 1VCMJTI “ඇಉظతͳػೳ͢Δ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "QQ "QQ “ඇಉظతͳػೳ͢Δ” "1*3FTQPOTF 1VCMJTI 1VTI ՝ۚର l4FWFSMFTT%BZT'VLVPLB,FLF
5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "QQ "QQ “ඇಉظతͳػೳ͢Δ” "1*3FTQPOTF 1VCMJTI 1VTI ՝ۚର l4FWFSMFTT%BZT'VLVPLB,FLF
5XJUUFS!@L@F@L@F z ɾىಈ͍ͯ͠Δ͕࣌ؒॏෳ͕গͳ͘ͳΔ ɾݺͼग़͠ճ૿͑Δ͕τϨʔυΦϑ "QQ͕ॏ͍ॲཧͩͱ༗ޮత
“ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "QQ "QQ “ඇಉظతͳػೳ͢Δ” "1*3FTQPOTF 1VCMJTI 1VTI ՝ۚର l4FWFSMFTT%BZT'VLVPLB,FLF
5XJUUFS!@L@F@L@F z ɾىಈ͍ͯ͠Δ͕࣌ؒॏෳ͕গͳ͘ͳΔ ɾݺͼग़͠ճ૿͑Δ͕τϨʔυΦϑ "QQ͕ॏ͍ॲཧͩͱ༗ޮత ճͷݺͼग़͠՝ۚඵͷW$16 ˠαʔόʔϨεͩͱͳ͓͞Βܭࢉ͕࣌ؒ ͜ΕΛ্ճΔ߹͕ଟ͍
l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z “ΞʔΩςΫνϟͷTipsͱίετ” "1*3FRVFTU "QQ "QQ “ඇಉظతͳػೳ͢Δ” 5FNQSFTQPOTF 1VCMJTI
1VTI 3FTVMUSFTQPOTF λΠϜΞτ͕͋Δ8FCIPPLͳͲ $PME4UBSUʹΑΔλΠϜΞτආ͚ΒΕΔ
“ಉ͡ػೳҰͭʹूΊΔ͜ͱ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” “ಉ͡ػೳҰͭʹूΊΔ͜ͱ” "1*3FRVFTU "1*3FRVFTU "1*3FTQPOTF "1*3FTQPOTF "QQ "QQ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F
z
“ΞʔΩςΫνϟͷTipsͱίετ” “ಉ͡ػೳҰͭʹूΊΔ͜ͱ” "1*3FRVFTU "1*3FRVFTU "1*3FTQPOTF "1*3FTQPOTF "QQ "QQ $PNNPO-JCSBSZ l4FWFSMFTT%BZT'VLVPLB,FLF
5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” “ಉ͡ػೳҰͭʹूΊΔ͜ͱ” "1*3FRVFTU "1*3FRVFTU "1*3FTQPOTF "1*3FTQPOTF "QQ "QQ $PNNPO-JCSBSZ 8PSTFODPMETUBSU
l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” “ಉ͡ػೳҰͭʹूΊΔ͜ͱ” "1*3FRVFTU "1*3FTQPOTF "QQ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” “ಉ͡ػೳҰͭʹूΊΔ͜ͱ” "1*3FRVFTU "1*3FTQPOTF "QQ l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z ɾىಈ͍ͯ͠Δ࣌ؒͷݮগ ɾݺͼग़͠ճͷݮগ
“ωοτϫʔΫͷೖΓޱ1ͭʹ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” 3FRVFTU "QQ “ωοτϫʔΫతೖΓޱΛҰͭʹ” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z "QQ/ ʜ 3FRVFTU
3FRVFTU 3FRVFTU ʜ "QQ ʜ "QQ. εύήοςΟ ՝ۚ㲈Ͱ͔͔ͬͯ͘Δ
“ΞʔΩςΫνϟͷTipsͱίετ” 3FRVFTU "QQ3PPU l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z DPODVSSFODZΛઃఆ 3FRVFTU 3FRVFTU “ωοτϫʔΫతೖΓޱΛҰͭʹ”
"QQ "QQ "QQ/ ʜ
“ΞʔΩςΫνϟͷTipsͱίετ” 3FRVFTU "QQ3PPU l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z DPODVSSFODZΛઃఆ 3FRVFTU 3FRVFTU “ωοτϫʔΫతೖΓޱΛҰͭʹ”
"QQ "QQ "QQ/ ʜ ɾ"QQ3PPUʹ͔͔Δෛՙ͕ߴ͘ͳ Δ͕"QQ/͕ཧ͘͢͠ͳΔ ɾݺͼग़͠αΠΫϧ͕গͳ͘ͳΔ
“ΞʔΩςΫνϟͷTipsͱίετ” 3FRVFTU "QQ3PPU l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z DPODVSSFODZΛઃఆ 3FRVFTU 3FRVFTU “ωοτϫʔΫతೖΓޱΛҰͭʹ”
"QQ "QQ "QQ/ ʜ ɾ"QQ3PPUʹ͔͔Δෛՙ͕ߴ͘ͳ Δ͕"QQ/͕ཧ͘͢͠ͳΔ ɾݺͼग़͠αΠΫϧ͕গͳ͘ͳΔ
“ΞʔΩςΫνϟͷTipsͱίετ” 3FRVFTU "QQ3PPU l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z DPODVSSFODZΛઃఆ 3FRVFTU 3FRVFTU “ωοτϫʔΫతೖΓޱΛҰͭʹ”
"QQ "QQ "QQ/ ʜ ɾ"QQ3PPUʹ͔͔Δෛՙ͕ߴ͘ͳ Δ͕"QQ/͕ཧ͘͢͠ͳΔ ɾݺͼग़͠αΠΫϧ͕গͳ͘ͳΔ 3FRVFTUʹΑΔ͕"QQ3PPU4FSWFS ʹ͓͖͔͑Δબࢶ ɾݺͼग़͠ճͰͷ՝ۚͳ͘ͳΔ
“ΞʔΩςΫνϟͷTipsͱίετ” 3FRVFTU "QQ3PPU l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z DPODVSSFODZΛઃఆ 3FRVFTU 3FRVFTU “ωοτϫʔΫతೖΓޱΛҰͭʹ”
"QQ "QQ "QQ/ ʜ ɾ"QQ3PPUʹ͔͔Δෛՙ͕ߴ͘ͳ Δ͕"QQ/͕ཧ͘͢͠ͳΔ ɾݺͼग़͠αΠΫϧ͕গͳ͘ͳΔ 3FRVFTUʹΑΔ͕"QQ3PPU4FSWFS ʹ͓͖͔͑Δબࢶ ɾݺͼग़͠ճͰͷ՝ۚͳ͘ͳΔ
“ΞʔΩςΫνϟͷTipsͱίετ” 3FRVFTU "QQ $POOFDUJPO “ConnectionͳͲΛอ࣋͢Δͷ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z
“ΞʔΩςΫνϟͷTipsͱίετ” 3FRVFTU "QQ $POOFDUJPO “ConnectionͳͲΛอ࣋͢Δͷ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z "QQ/ ʜ
$POOFDUJPO $POOFDUJPO 3FRVFTU 3FRVFTU 3FRVFTU ʜ ✗ NBY$POOFDUJPO 4MPX3FTQPODF
“ΞʔΩςΫνϟͷTipsͱίετ” 3FRVFTU "QQ $POOFDUJPO “ConnectionͳͲΛอ࣋͢Δͷ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z "QQ/ ʜ
$POOFDUJPO $POOFDUJPO 3FRVFTU 3FRVFTU 3FRVFTU ʜ ✗ NBY$POOFDUJPO 4MPX3FTQPODF ɾىಈ͕࣌ؒ͘ͳΔ ɾճආ͢ΔͨΊͷϩδοΫ͕ඞཁʹ ͳΔ ɾ42-αʔόʔʹෛՙ͕͔͔Δ
“ΞʔΩςΫνϟͷTipsͱίετ” 3FRVFTU "QQ $POOFDUJPO “ConnectionͳͲΛอ࣋͢Δͷ͠ͳ͍” l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z DPODVSSFODZΛઃఆ 3FRVFTU
3FRVFTU
l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z “Takeaway”
l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z “Takeaway” “Serverless Architecture”
l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z “Takeaway” “Serverless Architectureͱ” (ࠓճͰCloud RunͰ͋Δ͕ʣServerlessͰαʔϏε Λ࡞ΔͨΊͷArchitectureͷϕετϓϥΫςΟεɻ αʔϏεΛӡ༻͢ΔͨΊͷίετΛ͑ͯ
Serverlessͷ༗༻ੑΛࣔ͢ͷɻ
l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z “Takeaway” “Serverless Architectureͱ” 3. ͳΔ͘Ұͭͷίϯϙʔωϯτʹ౷߹͢Δ͜ͱ 1. ίετʹ݁͢ΔΠϕϯτ(ϝοηʔδͳͲ)ΛߜΔ͜ͱ
5. ಉظੑɺ·ͨεςʔτʹΑͬͯΛ͢Δ͜ͱ 4. ଞͷίϯϙʔωϯτΛݺͼग़͞ͳ͍͜ͱ 2. ωοτϫʔΫͷೖΓޱΛҰͭʹ͢Δ͜ͱ 6. ৗ࣌ىಈ͍ͯ͠ΔΑ͏ͳΠϯελϯεαʔόʔݕ౼͢Δ͜ͱ
l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z “Happy Serverless Life”
l4FWFSMFTT%BZT'VLVPLB,FLF 5XJUUFS!@L@F@L@F z “Thank you”