SlideShare a Scribd company logo
1 of 27
JAWS-UG 愛媛 第8回勉強会
AWS Lambda
自己紹介
加藤 貴宏(かとう たかひろ)
仕事:
愛媛県新居浜市在住
地元の会社でグループ内SE
今追っかけているIT技術:
Internet of Things
好きなAWSサービス:
AWS IoT、Lambda、API Gateway
AWSを仕事で使っていない(ToT)
Agenda
1. Lambdaとは
2. プログラム作成(画面説明、テストデータの作成等)
- Hello World!
- Pullモデル
- Pushモデル
3. モデルまとめ
4. Scheduled Event
5. 実行環境関係
6. 料金計算
Agenda
1. Lambdaとは
2. プログラム作成(画面説明、テストデータの作成等)
- Hello World!
- Pullモデル
- Pushモデル
3. モデルまとめ
4. Scheduled Event
5. 実行環境関係
6. 料金計算
Lambdaとは
コードをクラウド上にアップロードして、
直接実行できるイベントドリブンサービス。
プログラム実行のトリガーは、
AWS上の他のサービスのイベント。
インフラ管理はAWSに全てお任せ。
対応プログラミング言語は、
「JavaScript(Node.js)」、「Java」、「Python」
Agenda
1. Lambdaとは
2. プログラム作成(画面説明、テストデータの作成等)
- Hello World!
- Pullモデル
- Pushモデル
3. モデルまとめ
4. Scheduled Event
5. 実行環境関係
6. 料金計算
Pullモデル
Pushモデル
Agenda
1. Lambdaとは
2. プログラム作成(画面説明、テストデータの作成等)
- Hello World!
- Pullモデル
- Pushモデル
3. モデルまとめ
4. Scheduled Event
5. 実行環境関係
6. 料金計算
モデルまとめ
Pullモデル
• Lambdaがイベントソースをポーリングして、
イベントを検出するとコードを実行。
• コード実行の順序は保証。
• 処理に失敗した場合、 不定
期間隔で初回起動を含め20回までリトライ。
モデルまとめ
Pushモデル
• AWSサービスからLambdaへイベント通知して、
コードを実行する。
• コード実行の順序は保証されない。
• 処理に失敗した場合、 1分
間隔で初回起動を含め3回までリトライ。
Agenda
1. Lambdaとは
2. プログラム作成(画面説明、テストデータの作成等)
- Hello World!
- Pullモデル
- Pushモデル
3. モデルまとめ
4. Scheduled Event
5. 実行環境関係
6. 料金計算
Scheduled Event
「TOPページ」-「AWS Lambdaページ」-
「ドキュメント」-「開発者ガイド」-
「Python での Lambda 関数の作成」-
「ウォークスルー (Python)」-
「ウォークスルー 5: スケジュールイベント (Python)」
を参照
Scheduled Event
スケジュール機能。
Windowsで言うところの「タスク スケジューラ」
Linuxで言うところの「cron」
月初や年指定ができて便利!
Agenda
1. Lambdaとは
2. プログラム作成(画面説明、テストデータの作成等)
- Hello World!
- Pullモデル
- Pushモデル
3. モデルまとめ
4. Scheduled Event
5. 実行環境関係
6. 料金計算
実行環境関係
実行環境参照ページ
「TOPページ」-「AWS Lambdaページ」-
「ドキュメント」-「開発者ガイド」-
「仕組み」-「Lambda実行環境」
実行環境関係
tmpフォルダ
一時作業ディレクトリとしてtmpフォルダが使用可能。
容量は512MB。ファイルパスは /tmp/
基本的に実行の度に異なるLinux環境を使用するが、
同じLinux環境を使用するケースもある為、
同じファイル名を書き込もうとすると、
パーミッションエラーが発生する。
毎回ファイルを削除するようにするか、
ファイル名が重複しないようにする必要がある。
Agenda
1. Lambdaとは
2. プログラム作成(画面説明、テストデータの作成等)
- Hello World!
- Pullモデル
- Pushモデル
3. モデルまとめ
4. Scheduled Event
5. 実行環境関係
6. 料金計算
料金計算
従量課金制(永続的な無料利用枠あり)。
関数に対するコードの実行時間及びリクエスト数に応じて
請求金額が決定する。
SIMPLE MONTHLY CALCULATOR(簡易見積ツール)に
Lambda を計算する機能が無い。
料金計算
コンピューティング料金(コードの実行時間)
1GB/秒の使用につき「0.00001667 USD」
※1GBはメモリの値
無料利用枠は、毎月「400,000 GB/秒」
最小課金単位は100ミリ秒。
メモリ:128MB、リクエスト:30,000,000回、毎回の実行時間:200ミリ秒の場合の
1ヶ月の請求金額は?
料金計算
コンピューティング料金(コードの実行時間)
1GB/秒の使用につき「0.00001667 USD」
※1GBはメモリの値
無料利用枠は、毎月「400,000 GB/秒」
最小課金単位は100ミリ秒。
メモリ:128MB、リクエスト:30,000,000回、毎回の実行時間:200ミリ秒の場合の
1ヶ月の請求金額は?
◆1ヶ月のコンピューティング料金
30,000,000 * 0.2 = 6,000,000[稼働時間(秒)]
6,000,000 * (128 / 1024) = 750,000[GB/秒]
750,000 - 400,000 = 350,000[無料利用枠分を控除]
350,000 * 0.000001667 = 5.83 USD
料金計算
リクエスト料金
1,000,000件のリクエストにつき「0.20 USD」
無料利用枠は、毎月「1,000,000 件」
メモリ:128MB、リクエスト:30,000,000回、毎回の実行時間:200ミリ秒の場合の
1ヶ月の請求金額は?
料金計算
リクエスト料金
1,000,000件のリクエストにつき「0.20 USD」
無料利用枠は、毎月「1,000,000 件」
メモリ:128MB、リクエスト:30,000,000回、毎回の実行時間:200ミリ秒の場合の
1ヶ月の請求金額は?
◆1ヶ月のリクエスト料金
30,000,000 - 1,000,000 = 29,000,000[無料利用枠を考慮したリクエスト回数]
29.000,000 / 1,000,000 * 0.2 = 5.8 USD
料金計算
1ヶ月の請求料金
コンピューティング料金 + リクエスト料金
参考ページ
「TOPページ」ー「コンピューティング」ー「AWS Lambda」ー「料金」
注意点
参考ページに記載してある料金表はおおよその金額なので、見積を算出するこ
と場合は気をつけること!
作ってみた
何を作った?
ChatOpsのOps(サーバー処理やアラート処理)の部分
ChatOpsって何?
Chat上でコミュニケーションだけではなく、オペレーション
作業やBOTを利用した情報収集等をこなす開発スタイル!
作業の殆どをコマンドでこなす感じが、
いかにもエンジニアって感じでカッコいい!! ← 重要!
作ってみた
Slack API Gateway Lambda
Slack(チャットツール)上でコマンドを叩いてサーバー(EC2)を起動、停止。
EC2
作ってみた
SlackCloud Watch LambdaSNS
Cloud WatchのアラートをSlackに投稿。

More Related Content

What's hot

AWS CODE DEPLOY for Jaws-ug oita
AWS CODE DEPLOY for Jaws-ug oitaAWS CODE DEPLOY for Jaws-ug oita
AWS CODE DEPLOY for Jaws-ug oitaMasahiro Ienaga
 
AWS lamdbaでステートフルWebアプリ
AWS lamdbaでステートフルWebアプリAWS lamdbaでステートフルWebアプリ
AWS lamdbaでステートフルWebアプリKazuki Saito
 
Jawsday2015 lambda(なにができるの? EC2はもう不要?)
Jawsday2015 lambda(なにができるの? EC2はもう不要?)Jawsday2015 lambda(なにができるの? EC2はもう不要?)
Jawsday2015 lambda(なにができるの? EC2はもう不要?)Shiraishi Masayuki
 
モバイル開発者から見た サーバーレスアーキテクチャ
モバイル開発者から見た サーバーレスアーキテクチャモバイル開発者から見た サーバーレスアーキテクチャ
モバイル開発者から見た サーバーレスアーキテクチャTakaaki Tanaka
 
Programming AWS with Perl at YAPC::Asia 2013
Programming AWS with Perl at YAPC::Asia 2013Programming AWS with Perl at YAPC::Asia 2013
Programming AWS with Perl at YAPC::Asia 2013Yasuhiro Horiuchi
 
re:Growth ビッグデータ観点で見た AWS re:Invent 2015
re:Growth ビッグデータ観点で見た AWS re:Invent 2015re:Growth ビッグデータ観点で見た AWS re:Invent 2015
re:Growth ビッグデータ観点で見た AWS re:Invent 2015Satoru Ishikawa
 
Spring Cloud Stream - Spring One Platform 2019 -
Spring Cloud Stream - Spring One Platform 2019 -Spring Cloud Stream - Spring One Platform 2019 -
Spring Cloud Stream - Spring One Platform 2019 -mosh16
 
Lambdaのscheduled eventで実現する運用視点のサーバレスパターン
Lambdaのscheduled eventで実現する運用視点のサーバレスパターンLambdaのscheduled eventで実現する運用視点のサーバレスパターン
Lambdaのscheduled eventで実現する運用視点のサーバレスパターンJin k
 
Lambda × Mobileの可能性
Lambda × Mobileの可能性Lambda × Mobileの可能性
Lambda × Mobileの可能性yuki0211s
 
IoT/GPSトラッキング プラットフォームがサーバレス だからこそ2ヶ月で構築できた話
IoT/GPSトラッキング プラットフォームがサーバレス だからこそ2ヶ月で構築できた話IoT/GPSトラッキング プラットフォームがサーバレス だからこそ2ヶ月で構築できた話
IoT/GPSトラッキング プラットフォームがサーバレス だからこそ2ヶ月で構築できた話Yuki Takahashi
 
reGrowth福島 サーバレスの事例とセキュリティサービス
reGrowth福島 サーバレスの事例とセキュリティサービスreGrowth福島 サーバレスの事例とセキュリティサービス
reGrowth福島 サーバレスの事例とセキュリティサービスHaga Takeshi
 
AWSでEC2上にMTAを構築した話
AWSでEC2上にMTAを構築した話AWSでEC2上にMTAを構築した話
AWSでEC2上にMTAを構築した話康宏 緒方
 
API Gatewayで re:Inventのセッション探し
API Gatewayで re:Inventのセッション探しAPI Gatewayで re:Inventのセッション探し
API Gatewayで re:Inventのセッション探しRyo Nakamaru
 
Reco choku tech night #09 -reinvent2018報告会-
Reco choku tech night #09 -reinvent2018報告会-Reco choku tech night #09 -reinvent2018報告会-
Reco choku tech night #09 -reinvent2018報告会-recotech
 
AWS App RunnerでASP.NET Core Webアプリケーションを動かしてみた
AWS App RunnerでASP.NET Core Webアプリケーションを動かしてみたAWS App RunnerでASP.NET Core Webアプリケーションを動かしてみた
AWS App RunnerでASP.NET Core Webアプリケーションを動かしてみたKen'ichirou Kimura
 
AWSサーバーレスをつかってハマったところ
AWSサーバーレスをつかってハマったところAWSサーバーレスをつかってハマったところ
AWSサーバーレスをつかってハマったところmasaru kawabata
 
Amazon Connectで到着報告を自動化
Amazon Connectで到着報告を自動化Amazon Connectで到着報告を自動化
Amazon Connectで到着報告を自動化Mitsuhiro Yamashita
 
AWS Introduction for Startups
AWS Introduction for StartupsAWS Introduction for Startups
AWS Introduction for Startupsakitsukada
 
2013.12.10 Classmethod re:Grwoth
2013.12.10 Classmethod re:Grwoth2013.12.10 Classmethod re:Grwoth
2013.12.10 Classmethod re:Grwothshinyaa31
 

What's hot (20)

AWS CODE DEPLOY for Jaws-ug oita
AWS CODE DEPLOY for Jaws-ug oitaAWS CODE DEPLOY for Jaws-ug oita
AWS CODE DEPLOY for Jaws-ug oita
 
AWS lamdbaでステートフルWebアプリ
AWS lamdbaでステートフルWebアプリAWS lamdbaでステートフルWebアプリ
AWS lamdbaでステートフルWebアプリ
 
Jawsday2015 lambda(なにができるの? EC2はもう不要?)
Jawsday2015 lambda(なにができるの? EC2はもう不要?)Jawsday2015 lambda(なにができるの? EC2はもう不要?)
Jawsday2015 lambda(なにができるの? EC2はもう不要?)
 
モバイル開発者から見た サーバーレスアーキテクチャ
モバイル開発者から見た サーバーレスアーキテクチャモバイル開発者から見た サーバーレスアーキテクチャ
モバイル開発者から見た サーバーレスアーキテクチャ
 
Programming AWS with Perl at YAPC::Asia 2013
Programming AWS with Perl at YAPC::Asia 2013Programming AWS with Perl at YAPC::Asia 2013
Programming AWS with Perl at YAPC::Asia 2013
 
re:Growth ビッグデータ観点で見た AWS re:Invent 2015
re:Growth ビッグデータ観点で見た AWS re:Invent 2015re:Growth ビッグデータ観点で見た AWS re:Invent 2015
re:Growth ビッグデータ観点で見た AWS re:Invent 2015
 
Spring Cloud Stream - Spring One Platform 2019 -
Spring Cloud Stream - Spring One Platform 2019 -Spring Cloud Stream - Spring One Platform 2019 -
Spring Cloud Stream - Spring One Platform 2019 -
 
Lambdaのscheduled eventで実現する運用視点のサーバレスパターン
Lambdaのscheduled eventで実現する運用視点のサーバレスパターンLambdaのscheduled eventで実現する運用視点のサーバレスパターン
Lambdaのscheduled eventで実現する運用視点のサーバレスパターン
 
Lambda × Mobileの可能性
Lambda × Mobileの可能性Lambda × Mobileの可能性
Lambda × Mobileの可能性
 
IoT/GPSトラッキング プラットフォームがサーバレス だからこそ2ヶ月で構築できた話
IoT/GPSトラッキング プラットフォームがサーバレス だからこそ2ヶ月で構築できた話IoT/GPSトラッキング プラットフォームがサーバレス だからこそ2ヶ月で構築できた話
IoT/GPSトラッキング プラットフォームがサーバレス だからこそ2ヶ月で構築できた話
 
reGrowth福島 サーバレスの事例とセキュリティサービス
reGrowth福島 サーバレスの事例とセキュリティサービスreGrowth福島 サーバレスの事例とセキュリティサービス
reGrowth福島 サーバレスの事例とセキュリティサービス
 
AWSでEC2上にMTAを構築した話
AWSでEC2上にMTAを構築した話AWSでEC2上にMTAを構築した話
AWSでEC2上にMTAを構築した話
 
API Gatewayで re:Inventのセッション探し
API Gatewayで re:Inventのセッション探しAPI Gatewayで re:Inventのセッション探し
API Gatewayで re:Inventのセッション探し
 
Reco choku tech night #09 -reinvent2018報告会-
Reco choku tech night #09 -reinvent2018報告会-Reco choku tech night #09 -reinvent2018報告会-
Reco choku tech night #09 -reinvent2018報告会-
 
What is Serverless?
What is Serverless?What is Serverless?
What is Serverless?
 
AWS App RunnerでASP.NET Core Webアプリケーションを動かしてみた
AWS App RunnerでASP.NET Core Webアプリケーションを動かしてみたAWS App RunnerでASP.NET Core Webアプリケーションを動かしてみた
AWS App RunnerでASP.NET Core Webアプリケーションを動かしてみた
 
AWSサーバーレスをつかってハマったところ
AWSサーバーレスをつかってハマったところAWSサーバーレスをつかってハマったところ
AWSサーバーレスをつかってハマったところ
 
Amazon Connectで到着報告を自動化
Amazon Connectで到着報告を自動化Amazon Connectで到着報告を自動化
Amazon Connectで到着報告を自動化
 
AWS Introduction for Startups
AWS Introduction for StartupsAWS Introduction for Startups
AWS Introduction for Startups
 
2013.12.10 Classmethod re:Grwoth
2013.12.10 Classmethod re:Grwoth2013.12.10 Classmethod re:Grwoth
2013.12.10 Classmethod re:Grwoth
 

Similar to JAWS-UG 愛媛 第6回勉強会(Lambda)

Azureをフル活用したサーバーレスの潮流について
Azureをフル活用したサーバーレスの潮流についてAzureをフル活用したサーバーレスの潮流について
Azureをフル活用したサーバーレスの潮流について真吾 吉田
 
LambdaとMobileの美味しいかもしれない関係
LambdaとMobileの美味しいかもしれない関係LambdaとMobileの美味しいかもしれない関係
LambdaとMobileの美味しいかもしれない関係Hiraku Komuro
 
Swaggerで始めるモデルファーストなAPI開発
Swaggerで始めるモデルファーストなAPI開発Swaggerで始めるモデルファーストなAPI開発
Swaggerで始めるモデルファーストなAPI開発Takuro Sasaki
 
CloudFormation/SAMのススメ
CloudFormation/SAMのススメCloudFormation/SAMのススメ
CloudFormation/SAMのススメEiji KOMINAMI
 
20200528_AWSでサーバーレスなLINEBotLIFFアプリ環境をIaCな感じで構築するよ!.pdf
20200528_AWSでサーバーレスなLINEBotLIFFアプリ環境をIaCな感じで構築するよ!.pdf20200528_AWSでサーバーレスなLINEBotLIFFアプリ環境をIaCな感じで構築するよ!.pdf
20200528_AWSでサーバーレスなLINEBotLIFFアプリ環境をIaCな感じで構築するよ!.pdfSumihiro Kagawa
 
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)Amazon Web Services Japan
 
aws mackerel twilio_handson_public
aws mackerel twilio_handson_publicaws mackerel twilio_handson_public
aws mackerel twilio_handson_publicTomoaki Sakatoku
 
クラウドネイティブ化する未来
クラウドネイティブ化する未来クラウドネイティブ化する未来
クラウドネイティブ化する未来Keisuke Nishitani
 
Aws lambda & amazon api gateway入門
Aws lambda &  amazon api gateway入門Aws lambda &  amazon api gateway入門
Aws lambda & amazon api gateway入門Yutaka Kajiwara
 
AWSで開発するサーバレスAPIバックエンド
AWSで開発するサーバレスAPIバックエンドAWSで開発するサーバレスAPIバックエンド
AWSで開発するサーバレスAPIバックエンド暁 三宅
 
20191018 AWS Lambda
20191018 AWS Lambda20191018 AWS Lambda
20191018 AWS Lambdayamamotomsc
 
サーバーレスの今とこれから
サーバーレスの今とこれからサーバーレスの今とこれから
サーバーレスの今とこれから真吾 吉田
 
Weave Node-RED and Azure together
Weave Node-RED and Azure togetherWeave Node-RED and Azure together
Weave Node-RED and Azure togetherKazumi IWANAGA
 
re:Port 2017 #2 「AWS re:Invent 2017 参加レポート」
re:Port 2017 #2 「AWS re:Invent 2017 参加レポート」re:Port 2017 #2 「AWS re:Invent 2017 参加レポート」
re:Port 2017 #2 「AWS re:Invent 2017 参加レポート」Mamoru Ohashi
 
Google App Engine Java 入門
Google App Engine Java 入門Google App Engine Java 入門
Google App Engine Java 入門tantack
 
初めてのLambda(ラムダ)
初めてのLambda(ラムダ)初めてのLambda(ラムダ)
初めてのLambda(ラムダ)Fumitaka Nishiyama
 
Jawsug chiba API Gateway
Jawsug chiba API GatewayJawsug chiba API Gateway
Jawsug chiba API GatewayTakuro Sasaki
 

Similar to JAWS-UG 愛媛 第6回勉強会(Lambda) (20)

Azureをフル活用したサーバーレスの潮流について
Azureをフル活用したサーバーレスの潮流についてAzureをフル活用したサーバーレスの潮流について
Azureをフル活用したサーバーレスの潮流について
 
LambdaとMobileの美味しいかもしれない関係
LambdaとMobileの美味しいかもしれない関係LambdaとMobileの美味しいかもしれない関係
LambdaとMobileの美味しいかもしれない関係
 
Swaggerで始めるモデルファーストなAPI開発
Swaggerで始めるモデルファーストなAPI開発Swaggerで始めるモデルファーストなAPI開発
Swaggerで始めるモデルファーストなAPI開発
 
CloudFormation/SAMのススメ
CloudFormation/SAMのススメCloudFormation/SAMのススメ
CloudFormation/SAMのススメ
 
20200528_AWSでサーバーレスなLINEBotLIFFアプリ環境をIaCな感じで構築するよ!.pdf
20200528_AWSでサーバーレスなLINEBotLIFFアプリ環境をIaCな感じで構築するよ!.pdf20200528_AWSでサーバーレスなLINEBotLIFFアプリ環境をIaCな感じで構築するよ!.pdf
20200528_AWSでサーバーレスなLINEBotLIFFアプリ環境をIaCな感じで構築するよ!.pdf
 
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)
 
aws mackerel twilio_handson_public
aws mackerel twilio_handson_publicaws mackerel twilio_handson_public
aws mackerel twilio_handson_public
 
クラウドネイティブ化する未来
クラウドネイティブ化する未来クラウドネイティブ化する未来
クラウドネイティブ化する未来
 
Aws lambda & amazon api gateway入門
Aws lambda &  amazon api gateway入門Aws lambda &  amazon api gateway入門
Aws lambda & amazon api gateway入門
 
AWSで開発するサーバレスAPIバックエンド
AWSで開発するサーバレスAPIバックエンドAWSで開発するサーバレスAPIバックエンド
AWSで開発するサーバレスAPIバックエンド
 
20191018 AWS Lambda
20191018 AWS Lambda20191018 AWS Lambda
20191018 AWS Lambda
 
サーバーレスの今とこれから
サーバーレスの今とこれからサーバーレスの今とこれから
サーバーレスの今とこれから
 
Weave Node-RED and Azure together
Weave Node-RED and Azure togetherWeave Node-RED and Azure together
Weave Node-RED and Azure together
 
re:Port 2017 #2 「AWS re:Invent 2017 参加レポート」
re:Port 2017 #2 「AWS re:Invent 2017 参加レポート」re:Port 2017 #2 「AWS re:Invent 2017 参加レポート」
re:Port 2017 #2 「AWS re:Invent 2017 参加レポート」
 
Gaming cicd-pipeline gaming-technight-2
Gaming cicd-pipeline gaming-technight-2Gaming cicd-pipeline gaming-technight-2
Gaming cicd-pipeline gaming-technight-2
 
Google App Engine Java 入門
Google App Engine Java 入門Google App Engine Java 入門
Google App Engine Java 入門
 
俺のLambda
俺のLambda俺のLambda
俺のLambda
 
初めてのLambda(ラムダ)
初めてのLambda(ラムダ)初めてのLambda(ラムダ)
初めてのLambda(ラムダ)
 
Jawsug chiba API Gateway
Jawsug chiba API GatewayJawsug chiba API Gateway
Jawsug chiba API Gateway
 
AWS Black Belt Techシリーズ AWS SDK
AWS Black Belt Techシリーズ AWS SDKAWS Black Belt Techシリーズ AWS SDK
AWS Black Belt Techシリーズ AWS SDK
 

JAWS-UG 愛媛 第6回勉強会(Lambda)