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
オープンソースコミュニティで加速するサーバーレスの未来/serverless will be
Search
堀家隆宏
October 04, 2019
Programming
4
730
オープンソースコミュニティで加速するサーバーレスの未来/serverless will be
堀家隆宏
October 04, 2019
Tweet
Share
More Decks by 堀家隆宏
See All by 堀家隆宏
auth0-meetup.pdf
horike37
1
270
What’s happening with Serverless Framework, and it lives with AWS SAM.
horike37
0
110
What is Serverless. Why is Serverless.
horike37
1
88
aws-with-functional-saas
horike37
2
180
serverless-with-oss
horike37
0
130
slsconftokyo
horike37
0
5.6k
slsconfworkshop
horike37
3
2.8k
Test Driven Development For Lambda
horike37
2
360
serverless-kyoto
horike37
1
170
Other Decks in Programming
See All in Programming
Advance Your Career with Open Source
ivargrimstad
0
250
GitHub Actions × AWS OIDC連携の仕組みと経緯を理解する
ota1022
0
230
気づいて!アプリからのSOS 〜App Store Connect APIで始めるパフォーマンス健康診断〜
waka12
0
260
メモリ不足との戦い〜大量データを扱うアプリでの実践例〜
kwzr
1
740
WebエンジニアがSwiftをブラウザで動かすプレイグラウンドを作ってみた
ohmori_yusuke
0
170
私はどうやって技術力を上げたのか
yusukebe
43
17k
Model Pollution
hschwentner
1
180
麻雀点数計算問題生成タスクから学ぶ Single Agentの限界と Agentic Workflowの底力
po3rin
5
2k
Learn CPU architecture with Assembly
akkeylab
1
1.3k
ポスターセッション: 「まっすぐ行って、右!」って言ってラズパイカーを動かしたい 〜生成AI × Raspberry Pi Pico × Gradioの試作メモ〜
komofr
0
900
フロントエンド開発に役立つクライアントプログラム共通のノウハウ / Universal client-side programming best practices for frontend development
nrslib
7
3.8k
Pythonスレッドとは結局何なのか? CPython実装から見るNoGIL時代の変化
curekoshimizu
4
1.2k
Featured
See All Featured
Facilitating Awesome Meetings
lara
56
6.6k
Raft: Consensus for Rubyists
vanstee
139
7.1k
Practical Orchestrator
shlominoach
190
11k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Speed Design
sergeychernyshev
32
1.1k
The Cost Of JavaScript in 2023
addyosmani
53
9k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
51k
Visualization
eitanlees
148
16k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
A better future with KSS
kneath
239
17k
Site-Speed That Sticks
csswizardry
11
870
The Language of Interfaces
destraynor
162
25k
Transcript
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. T O K Y O 2 0 1 9 . 1 0 . 0 3 - 0 4 ΦʔϓϯιʔείϛϡχςΟͰ Ճ͢ΔαʔόʔϨεͷະདྷ ງՈོ CEO Serverless Operations LLC
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ࣗݾհ ɾServerless Operationsͱ͍͏ձࣾΛͬͯ·͢ ɾServerless Frameworkͷϝϯςφʔ ɾαʔόʔϨεͰͷ։ൃָ͕ʹͳΔπʔϧΛ࡞ͬͯ ɹΦʔϓϯιʔεͰެ։ͯ͠·͢ ɾServerless Meetup TokyoͷΦʔΨφΠβʔ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. Ϋϥυͷੈքͷதʹ͍ͳ͕Βɺ ΦʔϓϯιʔείϛϡχςΟʹࢀՃ͢Δ͜ͱͷָ͠͞ҙຯ ͦͯͦ͠Ε͕͋ͳͨࣗΩϟϦΞʹͲΜͳӨڹΛͨΒ͢ͷ͔ ຊ͍͑ͨ͜ͱ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. Agenda ɾࢲͱαʔόʔϨεͷྺ࢙ ɾࢲ͕ؔΘ͍ͬͯΔOSSϓϩδΣΫτ ɾάϩʔόϧͷαʔόʔϨείϛϡχςΟʹࢀՃ͢Δ͜ͱ ɹͦͷதͰಘͨͷ ɾOSSϓϩδΣΫτΛܧଓతʹଓ͚Δํ๏ ɾ͜Ε͔ΒͷαʔόʔϨεͷ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. T O K Y O ͳͥαʔόʔϨεͳ OSSʹத͢ΔΑ͏ʹͳͬͨͷ͔ গࣗ͠ͷྺ࢙Λ͔͞ͷ΅ͬͯΈΔ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ɾ2006ɿେֶͷݚڀࣨͰγϡϛϨʔγϣϯͷϓϩάϥϜΛC++Ͱॻ͘ ɹɹɹɹɹϓϩάϥϛϯάͷָ͠͞Λײ͡ΔΑ͏ʹͳΔ ɾ2008ɿਆށσδλϧɾϥϘͱ͍͏ਆށͷSierͷձࣾʹ৽ଔೖࣾɻ ɹɹɹɹɹPHPΛ͔ͭͬͨWebΞϓϦέʔγϣϯͷ։ൃͷࣄΛͨ͘͞ΜΔ ɾ2009ɿΦʔϓϯιʔεCMSͷWordPressͱͷग़ձ͍ ྺ࢙
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. WordPressͱͷग़ձ͍
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. WordPressͱAWSͳʑ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. AWSָ͕ͦ͠͏ʹөΔʑ ɾ2013ࠒɺ·ͩEC2͕த৺ͷੈք؍ɻ ɹϓϩάϥϚʔͷࣗΠϯϑϥΛ৮Δ͜ͱ͕΄΅ͳ͍ͨΊ ɹਂؔ͘ΘΔ͜ͱͳ͔ͬͨ ɾͰAWSͷ͍ίϛϡχςΟʹඇৗʹऒ͔Ε͍ͯͨ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. 2014 - AWS LambdaͷϦϦʔε
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. AWS Lambdaͷ͕ͨΒͨ͠ͷ αʔόʔΛ࡞ΒͣͱϓϩάϥϜ͕AWS্Ͱ࣮ߦͰ͖ΔΑ͏ʹͳͬͨ ࣗͨͪʹAWSͷαʔϏεΛΈ߹Θͤͯ໘ന͍ͷ͕ͭ͘ΕΔͧͱ͍ ͏ϫΫϫΫ͕େ͖͘૿ͨ͠
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. 2015 - API GatewayͷϦϦʔε
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. API Gateway͕ͨΒͨ͠ͷ LambdaϕʔεͰ࡞ͬͨΞϓϦέʔγϣϯ͕HTTPϓϩτίϧΛ௨ͯ͠ AWSͷ֎ͷੈքʹ༰қʹग़ͤΔΑ͏ʹͳͬͨ AWSͷαʔϏεΛ্ख͘Έ߹Θͤͯ໘ന͍ΞϓϦέʔγϣϯΛ ެ։Ͱ͖Δͧͱ࣌ͷࣗେ͖͘ڵฃͨ͠
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ಈ͘ͷΛ࡞ͬͯࢼ͢ʑ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ໘ͨ͠ ɾϚωδϝϯτίϯιʔϧ͔ΒιʔείʔυΛΞοϓϩʔυ͢ΔͨΊɺ ɹόʔδϣϯཧͰ͖ͳ͍ ɾࢄڥԼͰͲͷΑ͏ʹߏཧ͢Δͷʁ ɾCI/CDͷࣗಈԽʁ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ͦΕΒΛղܾ͢ΔServerless Frameworkͷొ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. AWSͷߏΛOSSԽͰ͖Δিܸ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. T O K Y O ࢲ͕ؔΘΔαʔόʔϨεͳOSSϓϩδΣΫτ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. Serverless Framework
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ϓϥάΠϯγεςϜ Community Plugins
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. Serverless Step Functions
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ઃఆϑΝΠϧͷॻ͖ํ Reference to the functions Statemachine definition
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. Step FunctionsͷΠϕϯτιʔεΛఆٛ Event Source Step Functions Workflow
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ઃఆϑΝΠϧͷهड़ྔ͕গͳͯ͘ࡁΉ CloudFormation Serverless Step Functions
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. Serverless Step Functions
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. Serverless API Gateway Service Proxy https://github.com/horike37/serverless-apigateway-service-proxy
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. API GatewayͱAWSαʔϏεΛΠϯςάϨʔγϣϯ͢Δέʔε AWS Services API Gateway
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. Lambdaແ͠ͰͷΠϯςάϨʔγϣϯ AWS Services API Gateway
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. γϯϓϧͳઃఆϑΝΠϧ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. Ϣʔεέʔε https://qiita.com/horike37/items/4da41b7859cbf7bb9baf
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ΞʔΩςΫνϟ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ϑϩϯτ͔ΒAPIΛݺͼKinesisʹPVΛPUT
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ͦͷଞίϯτϦϏϡʔγϣϯͨ͠OSS ɾServerless Dashboard For Atom ɾServerless Application Model ɾAlisProject/serverless-application ɾServerless Delete Log Groups ɾServerless Package Customizer ɾPynamoDB ɾSimple API Gateway
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. T O K Y O αʔόʔϨεͳOSS׆ಈΛܧଓతʹଓ͚Δ Ϟνϕʔγϣϯ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ΦϯϥΠϯͰίʔυΛத৺ʹܨ͕ΔίϛϡχςΟ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ϓϩάϥϚͱͯͦ͜͠ʹࢀՃ͢Δָ͠͞ ɾਓؾͷ͋ΔΦʔϓϯιʔεϓϩμΫτʹεΩϧ͕༗Δਓ͕ू·ͬͯ͘Δɻ ɹͦ͏͍ͬͨਓ͔ΒιʔεͷϨϏϡʔΛड͚Δ͜ͱͰ֨ஈʹεΩϧΞοϓ͢Δ ɾԕ͘ͷࠃͷձͬͨ͜ͱͷͳ͍ਓ͔Βײँ͞ΕΔتͼ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ӳޠ͕Ͱ͖ͳ͍͜ͱେ͖ͳͰͳ͍ ɾࣗৗձ͕ո͍͠Ϩϕϧ ɾ༁πʔϧ͑ͷҙݟҙਤΛɹ ɹ͑Δ͜ͱՄೳ ɹॏཁͳͷ͕͔͔࣌ؒͬͯจষΛ ɹΈཱͯͯɺͦΕΒΛ͑Δ͜ͱ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ͜ΜͳϚΠϯυηοτͰOSSͱ͔͍߹͏ ɾਓؾͷ͋ΔΦʔϓϯιʔεϓϩμΫτɺ ɹҒ͍ͯ͘͢͝ਓ͚͕ͩͭͬͯ͘ΔͷͰͳ͍ ɹͨΓલʹࣗͷҙࢤ͕өͰ͖ΔॴͰ͋Δͱ͍͏͜ͱ ɾࣗͷॻ͍ͨίʔυ͕ྫ͑1ߦͩͱͯ͠ੈքதͷਓʹΘΕͯɺ ɹͲ͔͜ͷ୭͔ͷʹཱͬͯΔ͔͠Εͳ͍ͱ૾ͯ͠ΈΔ͜ͱ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. “ੈքΛม͑Δ͜ͱ͍͕͠ɺ ੈքΛ0.0000001mmྑ͘͢Δ͜ͱ ࠓͷগ͠ͷ͕ΜΓͰՄೳ͔͠Εͳ͍”
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. OSS׆ಈΛܧଓͤ͞Δʹ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ͳͥܧଓ͕͍͔͠ ɾऔΓ͑ͣެ։ͯ͠Έ͕ͨɺಛʹ୭͔ΒͷԠͳ͖ͯ͘͠·͏ ɾOSS׆ಈࣗମΊͪΌͪ͘Όຯ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ͲͷΑ͏ʹͦΕΛଧ։͢Δͷ͔ ɾ·ͣελʔ͕1000Ҏ্҆ʹΑؔ͘Θ͍ͬͯΔਓ͕ෳ͍Δɺ͔ͭ ɹhelp-wantedͳͲίϯτϦϏϡʔλͷೖΓޱΛ࡞ͬͯ͘ΕΔϓϩδΣΫτ ɹͰܧଓతʹϓϧϦΫΤετΛૹΓଓ͚Δ ɾઌૹΓʹ͞Ε͍ͯΔΛ௵͍ͯ͘͠ਓͷ ɹଘࡏΊͪΌͪ͘Όॏཁ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ͲͷΑ͏ʹͦΕΛଧ։͢Δͷ͔ ɾܧଓ͢ΔਓͷΊͪΌͪ͘Όগͳ͍ɻ ɹܧଓ͢Δ͜ͱͰ৴པ͞ΕͯίϛοτݖΛ༩͞ΕΔՄೳੑ͔ͳΓߴ͍ ɾίϛοτݖΛΒ͏ࠒʹɺͦͷOSSϓϩμΫτͰίϛϡχςΟ ɹͷ͍ͪһͱͯ͠ೝࣝ͞ΕΔɻࣗͷݟ͑Δܠ৭มΘΔ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ͲͷΑ͏ʹͦΕΛଧ։͢Δͷ͔ ɾͦͯ͠ɺϓϧϦΫΛग़͠ଓ͚ͨϓϩμΫτͷϓϥάΠϯͳͲਵͷ ɹOSSϓϩμΫτΛग़ͯ͠ΈΔ ɾίϛϡχςΟͷਓ͕ϑΟʔυόοΫͨ͠Γ ɹએͯ͘͠ΕͨΓɺҰॹʹ։ൃʹࢀՃͯ͘͠ΕͨΓͱ͍͏ɺ ɹྑ͍αΠΫϧ͕ճΔΑ͏ʹͳΓɺܧଓ͍͚ͯ͠ΔϞνϕʔγϣϯΛอͪ͘͢ͳΔ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. αʔόʔϨεͷະདྷͱ Φʔϓϯιʔε
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. Cloud 2.0ͱͲ͏͍ͬͨͷ͔ ɾαʔόʔϨεͰࣗͨͪͰΛ࣋ͨͳ͍ͱ͍͚ͳ͍ͷͬͯίʔυͷ෦ͩΑͶ ɹ͔ͩΒͦͷ͔Β։์͞ΕΔͨΊʹΑΓগͳ͍ίʔυΛΉΑͶ ɾͦͯͦ͠ͷଟ͘ϚωʔδυαʔϏεͰ࣮ݱͰ͖ͳ͍෦Λ ɹίʔυͰอͯ͠Δέʔε͕ଟ͘ɺͦ͜ʹେ͖ͳՁͳ͍ΑͶ ɾͭ·Γ“ڀۃͷαʔόʔϨεΞϓϦέʔγϣϯʹ ɹ·ͬͨ͘ίʔυ͕ͳ͍ΜͩΑ”
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. Cloud 2.0ͱͲ͏͍ͬͨͷ͔ ɾαʔόʔϨεͷૂ͍ΑΓίʔυΛগͳ͘ΫϥυͷαʔϏεΛ ɹग़དྷΔݶΓ͏͜ͱͩΑ ɹ͜ΕΛվΊͯ࣍ੈͷΫϥυͷ͍ํͱͯ͠“Cloud 2.0"ͱ໊͚ͯΈΑ͏ ɾ“Cloud 2.0”࣌ͷΩϯάͩΕ͔ʁͦΕʮ֦ுੑͱՄ༻ੑͷߴ͍ ɹΫϥυαʔϏεͷརΛཧղͯ͠ɺ ɹͦΕΒΛ݁ͼ͚ͭΔͨΊͷ࠷খݶ࠷దԽ͞Εͨ ɹίʔυΛॻ͘ਓͨͪʯͩͱ͓͏Α
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. “ϑϧϚωʔδυαʔϏεΛ͏·͘ར༻͢Δ͜ͱͰɺ ΞϓϦέʔγϣϯϩδοΫͷͷଟ͘ΛΫϥυʹͤ ΑΓϏδωεόϦϡʔΛग़ͨ͢Ίͷࣄʹूத͢Δ͜ͱ“ Cloud 2.0࣌ͷϚΠϯυηοτ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. ͦΜͳมԽʹͲͷΑ͏ʹ͖߹͏͔ ɾCloud2.0ͷ࣌ͰɺίʔυΛॻ͘ͱ͍͏͜ͱ͕ຊ࣭తʹͳ͘ͳ͍ͬͯ͘ͱ͍͏ ɹ͜ͱͳ͍ɻԿނͳΒΫϥυαʔϏεؚΊͨ͜ͷੈͷιϑτΣΞ ɹͯ͢ϓϩάϥϜͰಈ͍͍ͯΔͱ͍͏ࣄ࣮ ɾίʔυΛॻ͘ࢹΛม͑ͯΈΔɻ୯ൃͰೲ͢ΔࣄͷίʔυʹՁ ɹ͋Δͷ͔ʁܧଓతʹԿ͔ΛղܾͰ͖ΔΑ͏ͳ͜ͱΛίʔυͰදݱͯ͠ ɹ͍͘ํ͕Α͍ͷͰ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. OSSͰ͋Δͱ͍͏νϟϯε ɾΫϥυͷαʔϏεʑ৽͍͠ͷ͕ϦϦʔε͞ΕΔɻ ɹ৽͍͠ͷ͕ग़Δͱ͍͏͜ͱͦΕʹਵͯ͠ ɹ৽ͨͳൃੜ͢Δͱ͍͏͜ͱɻͱνϟϯεͰ͋Δͱ͍͏͜ͱ ɾOSSͰࣗͷॻ͘ίʔυ͕ଟ͘ͷਓʹӨڹΛ༩͑ΒΕΔͣ
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. One more thing…
© 2019, Amazon Web Services, Inc. or its affiliates. All
rights reserved. https://tokyo.serverlessdays.io/ ຊͰServerless DaysΓ·͢
Thank you! © 2019, Amazon Web Services, Inc. or its
affiliates. All rights reserved. ງՈོ
[email protected]