Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
AWS Lambdaの今現在
Search
hihats
September 01, 2017
Technology
820
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AWS Lambdaの今現在
Lambdaで色々やろうとして悪戦苦闘した話をまとめました。
結論Docker上げです。
hihats
September 01, 2017
Transcript
23 slides
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最高ですね
More Decks by hihats
See All by hihats
Which Json Serializer should we use in Ruby on Rails6 era
hihats
1
150
ソフトウェア設計についての基本認識
hihats
1
130
アジャイル開発を始める前におさえておきたいこと
hihats
0
130
コードの静的解析ツールを使う目的と効用
hihats
0
280
DIコンテナを学ぶ
hihats
2
410
Laravel勉強会 2016
hihats
0
1.5k
Other Decks in Technology
See All in Technology
2026-11-11 Tamachi.sre#7 PaCにインフラリソースの命を救われました。 / PaC saves the infra resource life
masasuzu
0
170
SREのためのFinOps入門
muziyoshiz
3
1.5k
サボる子はいねぇがー!AgentCoreハーネスの脆弱性に学ぶ、エージェントの入力バリデーション
iwamot
PRO
5
340
AWS Emulator を評価する: 手元で動く AWS の API の仕組み、始め方、確かめ方
inariku
PRO
1
360
AIが会計業務の伴走者に。 マネーフォワード クラウド会計MCPサーバーで実現するAI前提の新しい業務プロセス
nobitabashi
0
130
アラートを見直していたら営業組織への理解にちょっとだけ繋がった話
z63d
1
200
高品質と高スピードを支える品質のシフトレフトのアプローチ
goyoki
3
1k
プロダクションコードにおける encoding/json から encoding/json/v2 へのスムーズな移行
sansantech
PRO
1
420
ラクスル会社紹介資料|エンジニア向け / RAKSUL Introduction for Engineers
raksulrecruiting
0
100
仕様と現実の間で落とし所を探るリモートMCPの認証・認可 — Sansanの認証基盤における課題と実践
sansantech
PRO
2
290
Datadog の権限統制 〜Org 統合に向けて調べた注意点 / JDDUG-Meetup_24
visional_engineering_and_design
1
120
[NW-JAWS DAY]「うちのAWS、インターネット出られないんで」― AWS外の自社サービスをPrivateLinkでシュッと公開する方法
ykimi
1
110
Featured
See All Featured
Designing Powerful Visuals for Engaging Learning
tmiket
1
650
It's Worth the Effort
3n
188
29k
Test your architecture with Archunit
thirion
2
2.5k
For a Future-Friendly Web
brad_frost
184
11k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
560
The Curse of the Amulet
leimatthew05
4
17k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.4k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
330
Ten Tips & Tricks for a 🌱 transition
stuffmc
1
280
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
560
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
600
Visualization
eitanlees
153
17k