Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWS Lambdaの今現在
Search
hihats
September 01, 2017
Technology
0
790
AWS Lambdaの今現在
Lambdaで色々やろうとして悪戦苦闘した話をまとめました。
結論Docker上げです。
hihats
September 01, 2017
Tweet
Share
More Decks by hihats
See All by hihats
Which Json Serializer should we use in Ruby on Rails6 era
hihats
1
120
ソフトウェア設計についての基本認識
hihats
1
82
アジャイル開発を始める前におさえておきたいこと
hihats
0
100
コードの静的解析ツールを使う目的と効用
hihats
0
230
DIコンテナを学ぶ
hihats
2
400
Laravel勉強会 2016
hihats
0
1.4k
Other Decks in Technology
See All in Technology
2000年てづくりキーボードの旅
tagomoris
1
160
多様なロール経験が導いたエンジニアキャリアのナビゲーション
coconala_engineer
1
150
知らない景色を見に行こう チャンスを掴んだら道が開けたマネジメントの旅 / Into the unknown~My management journey~
kakehashi
10
1.1k
GDGoC開発体験談 - Gemini生成AI活用ハッカソン / GASとFirebaseで挑むパン屋のフードロス解決 -
hotekagi
1
730
Kaggleふりかえり会〜LLM 20 Questions & ISIC 2024
recruitengineers
PRO
2
180
LangChainとSupabaseを活用して、RAGを実装してみた
atsushii
0
150
12/4(水)のBedrockアプデ速報(re:Invent 2024 Daily re:Cap #3 with AWS Heroes)
minorun365
PRO
2
400
Advancing the 3D Geospatial Ecosystem in Japan via Global Collaborations
osgeojp
0
160
品質管理チームのEMとして大事にしていること / QA EM
nihonbuson
0
790
Explain EXPLAIN
keiko713
10
2.7k
asumikamというカンファレンスオーガナイザの凄さを語る / The Brilliance of Asumikam
tomzoh
1
290
突き破って学ぶコンテナセキュリティ/container-breakout-cncj-lt
mochizuki875
6
1.1k
Featured
See All Featured
Done Done
chrislema
181
16k
Become a Pro
speakerdeck
PRO
25
5k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Practical Orchestrator
shlominoach
186
10k
GitHub's CSS Performance
jonrohan
1030
460k
Speed Design
sergeychernyshev
25
650
Six Lessons from altMBA
skipperchong
27
3.5k
Facilitating Awesome Meetings
lara
50
6.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
890
Product Roadmaps are Hard
iamctodd
PRO
49
11k
Transcript
AWS Lambdaの今 2017 Autumn 手軽さと手軽でないところと
Lambdaとは AWS Lambda とは AWS Lambda はサーバーをプロビジョニングしたり管理しなくてもコードを実行できるコンピューティングサービスです。 AWSの公式ドキュメントより http://docs.aws.amazon.com/ja_jp/lambda/latest/dg/welcome.html
Lambdaとは AWS Lambda とは AWS Lambda はサーバーをプロビジョニングしたり管理しなくてもコードを実行できるコンピューティングサービスです。AWS Lambda は必要に応じてコードを実行し、1 日あたり数個のリクエストから
1 秒あたり数千のリクエストまで自動的にスケーリングし ます。使用したコンピューティング時間に対してのみお支払いいただきます- コードが実行中でなければ料金はかかりません。AWS Lambda によって、実質どのようなタイプのアプリケーションやバックエンドサービスでも、管理なしでコードを実行できます。AWS Lambda は可用性の高いコンピューティングインフラストラクチャでコードを実行し、コンピューティングリソースの管理をすべて担当 します。これにはサーバーおよびオペレーティングシステムの管理、キャパシティーのプロビジョニングおよび自動スケーリング、コー ドのモニタリングおよびログ記録などが含まれます。必要な操作は、AWS Lambda がサポートするいずれかの言語 (現在は Node.js、Java、C# および Python) でコードを指定するだけです。 AWS Lambda を使用して、Amazon S3 バケットまたは Amazon DynamoDB テーブル内のデータの変更などのイベントに応答し てコードを実行できます。Amazon API Gateway を使用して HTTP リクエストに応答してコードを実行します。または AWS SDK を 使用して作成された API コールを使用してコードを呼び出します。これらの機能により、Lambda をつ
Lambdaとは AWS Lambda とは AWS Lambda はサーバーをプロビジョニングしたり管理しなくてもコードを実行できるコンピューティングサービスです。
Lambdaとは AWS Lambda とは AWS Lambda はサーバーをプロビジョニングしたり管理しなくてもコードを実行できるコンピューティングサービスです。
Lambdaとは AWS Lambda とは AWS Lambda はサーバーをプロビジョニングしたり管理しなくてもコードを実行できるコンピューティングサービスです。
Lambdaとは AWSコンソールの GUI エディタ画面上でコーディング
Lambdaとは AWS Lambda とは AWS Lambda はサーバーをプロビジョニングしたり管理しなくてもコードを実行できるコンピューティングサービスです。 手軽に作れるバッチサーバのイメージ
Lambdaとは AWS Lambda とは AWS Lambda はサーバーをプロビジョニングしたり管理しなくてもコードを実行できるコンピューティングサービスです。 手軽に作れるバッチサーバのイメージ +プラス イベントドリブンでプログラムを実行
Lambdaとは
Lambdaとは メリット • コスト Lambda では 1 か月に 1,000,000 件の無料リクエストおよび
400,000 GB-秒のコンピューティング時間が無料利用枠となっています。 • 運用 サーバメンテナンスの面 オートスケール気にしない 通知の設定が簡単
実際使ってみて
• 複雑な処理もやりたくなる
None
ローカルマシン環境で開発するには Node, python, java, C# それぞれ用の SDK っぽいものがあり、それぞれ使う言語と使うラ イブラリをプロジェクトホームにインストールしなければならない コーディング終わったら、デプロイパッケージ(
ZIP ファイル)固めてアップロード しなけれ ばならない
Serverless Framework • sls コマンドで大体のことができる • yml でもろもろ設定 • コマンド一発で
Lambda にデプロイ • npmインストールして使う • AWSのIAMロール(管理者権限)が必要
Dockerでできるんじゃない?
LambCI • Lambda で CI 環境を作ろうという OSS • 自前で作るよりは楽 •
CI サービスよりは低コスト
None
$ ls lambda_function.py input.json $ docker run -v "$PWD":/var/task lambci/lambda:python3.6
lambda_function.lambda_handler $(printf '%s' $(cat input.json))
使いたいパッケージは requirements.txt に書く twitter pymongo numpy requests_oauthlib pytz
Dockerfileに実行環境用のビルドファイルを書く FROM lambci/lambda:build-python3.6 ENV LANG C.UTF-8 ENV AWS_DEFAULT_REGION ap-northeast-1 RUN
/bin/cp -f /usr/share/zoneinfo/Asia/Tokyo /etc/localtime WORKDIR /var/task ADD . . CMD pip install -r requirements.txt -t /var/task && \ zip -9 deploy_package.zip twitter_crawler.py && \ zip -r9 deploy_package.zip *
docker最高ですね