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
lambda-cognito-dynamodb
Search
tannai
February 04, 2015
Technology
0
5.4k
lambda-cognito-dynamodb
社内勉強会の資料です
tannai
February 04, 2015
Tweet
Share
More Decks by tannai
See All by tannai
redash patche at dmm
yuukigoodman
0
690
akibago-2018-10-30
yuukigoodman
0
68
serverless-design-and-streaming-date-processing-service
yuukigoodman
0
880
alexa-changes-development-process
yuukigoodman
0
1.4k
VUIとAlexaによるちょっと未来の体験の話2
yuukigoodman
0
800
regrowth2016alexa
yuukigoodman
0
1.1k
Rails App Deployment with CodeDeploy
yuukigoodman
0
1.3k
cognito-userpools-in-production
yuukigoodman
4
8.4k
aws-lambda-in-practice
yuukigoodman
2
1.9k
Other Decks in Technology
See All in Technology
Goで実践するBFP
hiroyaterui
1
120
PaaSの歴史と、 アプリケーションプラットフォームのこれから
jacopen
7
1.5k
【NGK2025S】動物園(PINTO_model_zoo)に遊びに行こう
kazuhitotakahashi
0
240
深層学習と3Dキャプチャ・3Dモデル生成(土木学会応用力学委員会 応用数理・AIセミナー)
pfn
PRO
0
460
AWS re:Invent 2024 recap in 20min / JAWSUG 千葉 2025.1.14
shimy
1
100
駆け出しリーダーとしての第一歩〜開発チームとの新しい関わり方〜 / Beginning Journey as Team Leader
kaonavi
0
120
Docker Desktop で Docker を始めよう
zembutsu
PRO
0
180
技術に触れたり、顔を出そう
maruto
1
150
CDKのコードレビューを楽にするパッケージcdk-mentorを作ってみた/cdk-mentor
tomoki10
0
210
Azureの開発で辛いところ
re3turn
0
240
embedパッケージを深掘りする / Deep Dive into embed Package in Go
task4233
1
220
Alignment and Autonomy in Cybozu - 300人の開発組織でアラインメントと自律性を両立させるアジャイルな組織運営 / RSGT2025
ama_ch
1
2.4k
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Writing Fast Ruby
sferik
628
61k
Documentation Writing (for coders)
carmenintech
67
4.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Practical Orchestrator
shlominoach
186
10k
Testing 201, or: Great Expectations
jmmastey
41
7.2k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3.1k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
113
50k
Designing for humans not robots
tammielis
250
25k
Transcript
シェアハウスにおける 風呂問題を 雑に解決する(ための技術) @yuukigoodman
最近の興味
None
解決したい問題
シェアハウスの風呂が混む
「風呂入るか」 (2Fから1Fに降りる) 「だれか入っていた。。。」
手段
None
Facebookログイン ユーザ名 ビーコン検知 投稿
改造中
None
None
雑感
iOSアプリケーション • 雑に作成(2日) • Swift • ちょっとしたノウハウがたくさん必要 ◦ ライブラリ管理 ◦
XCodeの操作 • 構成が難しい ◦ Reactive Programing ◦ MVVMアーキテクチャ
簡易BLEビーコン • Rasberry Piにドングル刺してnode.js • 作るのは簡単 ◦ OSをインストール、初期設定 ◦ Bluetoothドングルを刺して設定
◦ ビーコンプログラム作成 ◦ 起動時にBluetoothインタフェースをupする設定 ◦ 起動時にスクリプトをsupervisordで実行
Cognito Identity • 認証が一番むずかしい(と思う) • iOSとAWS両方の知識が必要 • Cognitoは地味だけど実は超強力 ◦ 複数のLogin
ProviderでIdentityを提供 ◦ 端末間でユーザ設定値の同期 ◦ AWSへのアクセス権を提供(後述) • 自前で作るのはめっちゃ厳しい
CognitoとSTS • スマフォからAWSへの権限を提供 • 何もしなくても高水準なセキュリティ • SDKを使うと楽 • APIも公開されている •
STS: Security Token Service ◦ キーをアプリに埋め込んで配布するのは良くない ◦ 有効期限が短いキーを都度発行 ◦ ヤバくなったら無効化するだけでOK
DynamoDB • 高可用フルマネージドKVS • テーブル - アイテム - レコード •
(運用も含めて)使うのは簡単 • コストマネジメントが難しい • Cognito経由なら安全に直接アクセス可能
AWS Lambda • 他のAWSイベントで実行するnode.jsバッチ • フルマネージドEC2という新しい使い方 • やってみると実は簡単で便利 • ライブラリ的な自由度も高い
• イベントソースはまだ弱い ◦ S3 notification ◦ DynamoDB Streams(Limited Preview) ◦ Kinesis(めっちゃ高価)
DynamoDB Streams • DynamoDBを更新したらLambda実行 • 更新内容をLambdaから読める • Limited Preview •
日本語が通らない疑惑 • 1度作成したStreamは削除できない
S3で簡易webホスティング • LambdaでHTMLファイルを作成 • S3にファイルを配置してpublicにする • Route53でCNAMEを設定してそれっぽく見せ る
まとめ
Lambda使うと EC2が無くて 完全に従量課金で良い感じ
スマフォもAWSの力で 良い感じにできるっぽい
やること多くて こういう分野大変だけど 楽しいのでやると良いです
Fin.