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
なぜサーバーレスとDockerなのか 〜 インフラ運用を最小化するサービス開発 〜 / Wh...
Search
Mitsuki Ogasahara
December 15, 2018
Technology
0
4k
なぜサーバーレスとDockerなのか 〜 インフラ運用を最小化するサービス開発 〜 / Why We Choose Serverless AND Docker
#devboost
https://event.shoeisha.jp/devboost/20181215/session/1907/
Mitsuki Ogasahara
December 15, 2018
Tweet
Share
More Decks by Mitsuki Ogasahara
See All by Mitsuki Ogasahara
コスト管理から向き合う技術的負債 / Accounting for Technical Debt Through Cost Management
yamitzky
0
22
Utility-first な CSS-in-JS 〜Tailwind CSS と Chakra UI を添えて〜 / Utility-First CSS-in-JS
yamitzky
5
1.4k
今から始める型安全 Python / Start Python Type Hints
yamitzky
13
4.8k
技術が好きで好きで好きでたまらないエンジニアが「取締役」になって思う、マネジメントキャリアパス / My Manager's Path
yamitzky
2
1k
Python 3.9 時代の型安全な Pythonの極め方 / Mastering Type Safety in Python 3.9 Era
yamitzky
35
30k
サーバーレスを活用して少数精鋭で開発するニュースアプリ #devsumi
yamitzky
4
2.9k
ここが辛いよサーバーレス だが私は乗り越えた #builderscon
yamitzky
14
7.8k
会社の開発合宿で Electron-vueで Slackクライアント作ってみた
yamitzky
0
2.7k
GitLabのSlack連携を魔改造して作る開発を楽しくする仕組み
yamitzky
1
2.6k
Other Decks in Technology
See All in Technology
本当に必要なのは「QAという技術」だった!試行錯誤から生まれた、品質とデリバリーの両取りアプローチ / Turns Out, "QA as a Discipline" Was the Key!
ar_tama
9
4.7k
さくらのクラウド開発の裏側
metakoma
PRO
18
5.3k
猫でもわかるS3 Tables【Apache Iceberg編】
kentapapa
2
230
Ninno LT
kawaguti
PRO
1
120
TanStack Start 技術選定の裏側 / Findy-Lunch-LT-TanStack-Start
iktakahiro
1
150
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
8
64k
テストコードにはテストの意図を込めよう(2025年版) #retechtalk / Put the intent of the test 2025
nihonbuson
PRO
9
1.8k
地に足の付いた現実的な技術選定から魔力のある体験を得る『AIレシート読み取り機能』のケーススタディ / From Grounded Tech Choices to Magical UX: A Case Study of AI Receipt Scanning
moznion
5
1.7k
LINE 購物幕後推手
line_developers_tw
PRO
0
570
製造業向けIoTソリューション提案資料.pdf
haruki_uiru
0
270
Serverlessだからこそコードと設計にはこだわろう
kenichirokimura
3
1.1k
Tailwind CSS の小話「コンテナークエリーって便利」
yamaday
0
130
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Code Review Best Practice
trishagee
68
18k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
How to Ace a Technical Interview
jacobian
276
23k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
33k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Rails Girls Zürich Keynote
gr2m
94
13k
Documentation Writing (for coders)
carmenintech
71
4.8k
Transcript
ͳͥαʔόʔϨεͱ%PDLFSͳͷ͔ ʙΠϯϑϥӡ༻Λ࠷খԽ͢ΔαʔϏε։ൃʙ খּݪΈ͖ͭ / @yamitzky 2018.12.15 Developers Boost C-4
w+9௨৴ࣾ71PG&OHJOFFSJOH w/FXT%JHFTUͷ(SBQI2-αʔόʔϨεͷಋೖɺ ϩάج൫ͷ։ൃͳͲ w8&# %#13&44αʔόʔϨεಛूΛدߘ ࣗݾհ
None
None
w+9௨৴ࣾͷνʔϜ։ൃͰʜ wʮ%PDLFSΫϥελʔʯͱʮαʔόʔϨεʯΛ͍͚ͯ σϓϩΠ wػೳΛ࡞ΔΤϯδχΞ͕։ൃʙσϓϩΠʙӡ༻·ͰΔ ຊͷςʔϚ ˠ8IZͱ)PXΛ͍͑ͨ ˞ʮ%PDLFSͱʯʮαʔόʔϨεͱʯʹ͍ͭͯ͠·ͤΜ
wʮαʔόʔϨεʯͱ wࠓճɺ'BB4ʹݶఆͯ͠͠·͢ w-BNCEBɺ'JSFCBTF$MPVE'VODUJPOͳͲ wʮσϓϩΠʯͱ wΞϓϦέʔγϣϯίʔυ "1*αʔόʔɺόονͳͲ Λ ΫϥυڥͰಈ͘Α͏ʹ͢Δ͜ͱɺʹݶఆ͠·͢ ༻ޠͷલఏ
+9ͷʮΠϯϑϥʯͷτϨϯυ ˞֓ཁͷͨΊɺҟͳΔߏͷϓϩδΣΫτ͋Γ·͢ 714*BB4ظ αʔόʔϨε׆༻ظ %PDLFSԽظ ੲ ࠓ
w&$͘͞Βͷ714ͳͲ w"OTJCMF&MBTUJD#FBOTUBMLɺखಈσϓϩΠͳͲ·ͪ·ͪ ॳظɿ714ɾ*BB4ظ
wεέʔϥϏϦςΟ͕ٻΊΔج४ΑΓ͔ͬͨ wΠϯϑϥͷӡ༻ίετ͕ߴ͔ͬͨ wϓϩδΣΫτʹΑͬͯӡ༻ํ๏όϥόϥ w̍γεςϜʹ࠷ׂ̍ΓͯΔͱɺίετߴ ͭΒ͔ͬͨ͜ͱ
ಥવͰ͕͢ɺɺɺ χϡʔδʔϥϯυͰɺਓؒΑΓώπδͷํ͕ଟ͍
ಥવͰ͕͢ɺɺɺ +9௨৴ࣾͰɺΤϯδχΞΑΓγεςϜͷํ͕ଟ͍ "1* ࢹόον ΞΫηεղੳ هࣄղੳ
wεέʔϥϏϦςΟ͕ٻΊΔج४ΑΓ͔ͬͨ wΠϯϑϥͷӡ༻ίετ͕ߴ͔ͬͨ wϓϩδΣΫτʹΑͬͯӡ༻ํ๏όϥόϥ w̍γεςϜʹ࠷ׂ̍ΓͯΔͱɺίετߴ ͭΒ͔ͬͨ͜ͱ ˠΠϯϑϥཧָʹΓ͍ͨ
+9ͷʮΠϯϑϥʯͷτϨϯυ 714*BB4ظ αʔόʔϨε׆༻ظ %PDLFSԽظ ੲ ࠓ
w࣍ͷσϓϩΠڥΛ४උ͠ɺ֤։ൃΤϯδχΞ͕σϓϩΠ w&$4ͷ%PDLFSΫϥελʔ wαʔόʔϨε -BNCEB w*BB4ΛૉͰ͏͜ͱ΄΅ͳ͍ ݱࡏ ˞ͨ·ʹ1BB4͍·͢
wΠϯϑϥͷཧ༧͕ෆཁ wߴ͍εέʔϥϏϦςΟͱίετޮ wৗறϓϩηε͕ͳ͍ϥΠϑαΠΫϧ αʔόʔϨε 'BB4
w֤ϓϩδΣΫτͰ%PDLFSpMFΛ४උͯ͠σϓϩΠ wεϙοτΠϯελϯεத৺ͰΫϥελʔΛߏங %PDLFSΫϥελʔ
wΠϯϑϥͷ४උඞཁ͕ͩɺɺɺ w%PDLFSͳͲগ͠ͷϛυϧΣΞ͕ඞཁͳ͚ͩͳͷͰɺηοτ Ξοϓ͕؆୯ ߦͷγΣϧ wεϙοτΠϯελϯεͰ͋ΕɺӬଓԽ͞ΕͨΠϯελϯε ͳ͘ɺݹ͍ͷॱ࣍ೖΕସ͑ΒΕΔ <ิ>%PDLFSΫϥελʔͷΠϯϑϥ ˠ*BB4714࣌ΑΓɺ͔ͳΓָ
ग़͖ͯͨͷΛͬ͘͟Γ࠶ཧ ந ߴ 714*BB4 %PDLFS Ϋϥελʔ αʔόʔϨε 'BB4 ӈʹߦ͘΄ͲɺΠϯϑϥཧ͕؆୯
ࠨʹߦ͘΄Ͳɺࣗ༝͕ߴ͍
wΞϓϦέʔγϣϯ͔ΒݟΔͱࣅͨΑ͏ͳϝϦοτ wॊೈͳΩϟύγςΟࢦఆ wϛϦඵʙඵͰىಈʗআͰ͖ΔԾԽڥ wΫϥυ͔Βͷڧ͍αϙʔτ %PDLFSڥͱαʔόʔϨεͷϝϦοτ ˠػೳɾϩδοΫʹूதͰ͖Δ
wಛੑ͕ҧ͏ͷͰɺ͍͚͍ͨ %PDLFSڥͱαʔόʔϨεͷൺֱ %PDLFS αʔόʔϨε Πϯϑϥཧ ඞཁ ෆཁ ࣗ༝ ߴ͍ ͍
ϕϯμʔґଘ ऑ͍ ڧ͍ ϓϩηε Քಇ࠷େ࣌ؒ ͍ ͍ DG$/$'4FSWFSMFTT8IJUFQBQFSW
wϓϩηεΛৗற͍ͤͨ͞ wϝϞϦ্ʹظؒΩϟογϡΛอ͍࣋ͨ͠ wΫϥυͷઃ੍͚ͨΛΦʔόʔ͢Δ߹ wˠ*BB4࣌ͱผͷτϥϒϧى͖Δ αʔόʔϨε͕߹Θͳ͍έʔε
wσϝϦοτΛ௵͠ɺಉ࣭Խ͢Δٕज़τϨϯυ %PDLFSڥͱαʔόʔϨεͷൺֱ %PDLFS αʔόʔϨε Πϯϑϥཧ ඞཁ ෆཁ ࣗ༝ ߴ͍ ͍
ϕϯμʔґଘ ऑ͍ ڧ͍ ϓϩηε Քಇ࠷େ࣌ؒ ͍ ͍
%PDLFSԽʗαʔόʔϨεԽͰಘΒΕͨ͜ͱ ઃܭ ։ൃ σϓϩΠ ӡ༻ࢹ DG/FUqJY`Tl'VMM$ZDMF%FWFMPQFSTz ςετ
$*$%ΛࣗಈԽɾڞ௨Խ %PDLFSԽʗαʔόʔϨεԽͰಘΒΕͨ͜ͱ ઃܭ ։ൃ σϓϩΠ ӡ༻ࢹ ςετ ࣗಈԽ͠ɺ $*$%Λڞ௨Խɾ؆қԽ "NB[PO$MPVE8BUDIͳͲͰ
ڞ௨Խ
%PDLFSԽʗαʔόʔϨεԽͰಘΒΕͨ͜ͱ ઃܭ ։ൃ σϓϩΠ ӡ༻ࢹ ςετ ࣗಈԽɾڞ௨Խ͘͢͠ͳͬͨͷͰɺ ։ൃ͔ΒઌͷλεΫΛશһ͕Γ͘͢ͳͬͨ ඪ४Խ͞ΕͯΔͷͰɺ ଞνʔϜͷτϥϒϧαϙʔτ͍͢͠
αʔόʔϨεͱ%PDLFSڥϝϦοτ͕ࣅ͍ͯͯ ʮҰҰͳσϓϩΠڥͷҰͭʯ ͱଊ͑ɺ͍͚͍ͯΔ͔Β ͳͥαʔόʔϨεʮͱʯ%PDLFSͳͷ͔
%PDLFSʗαʔόʔϨεڥͰͷҧ͍ ઃܭ ։ൃ σϓϩΠ ӡ༻ࢹ ςετ େ͖ͳҧ͍͜͜ʂ
wϓϩδΣΫτͷ%PDLFSԽ w$*ఆٛͷڞ௨Խ wΞϥʔτͷڞ௨Խ %PDLFSΫϥελʔʮͱʯαʔόʔϨεͷ׆༻ͷͨΊʹ
wσϓϩΠઌ͕αʔόʔϨεͰ͋ͬͯɺEPDLFSDPNQPTFVQͰ ։ൃڥ্ཱ͕͕ͪΔΑ͏ʹ࡞Δ ʹʮαʔόʔϨεͰಈ͘ɺͨͩͷΞϓϦέʔγϣϯʯͱͯ͠࡞Δ wઃܭ͕αʔόʔϨεґଘʹͳΒͳ͍ wαʔόʔϨε͕߹Θͳͯ͘Ҡߦ͍͢͠ wσϓϩΠҎ֎͕ڞ௨Խ͍͢͠ ϓϩδΣΫτͷ%PDLFSԽ
Container vs Serverless? IUUQTUXJUUFSDPNBDMPVEHVSVTUBUVT
Container vs Serverless? IUUQTUXJUUFSDPNBDMPVEHVSVTUBUVT Container AND Serverless!!!
w*BB4͔Β%PDLFSԽʗαʔόʔϨεԽʹΑͬͯ wΠϯϑϥͷӡ༻ίετ͕Լ͕ͬͨ w։ൃͨ͠ΤϯδχΞ͕σϓϩΠɾӡ༻·Ͱݟ͘͢ͳͬͨ w։ൃɾσϓϩΠɾӡ༻ͷΈ͕ڞ௨Խ͞Εͨ wʲએʳ+9ͰαʔϏεΛ'VMM$ZDMFͰ։ൃ͍ͨ͠ΤϯδχΞ ΛืूதͰ͢ ·ͱΊ