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
650
akibago-2018-10-30
yuukigoodman
0
65
serverless-design-and-streaming-date-processing-service
yuukigoodman
0
820
alexa-changes-development-process
yuukigoodman
0
1.3k
VUIとAlexaによるちょっと未来の体験の話2
yuukigoodman
0
750
regrowth2016alexa
yuukigoodman
0
1.1k
Rails App Deployment with CodeDeploy
yuukigoodman
0
1.3k
cognito-userpools-in-production
yuukigoodman
4
8.2k
aws-lambda-in-practice
yuukigoodman
2
1.8k
Other Decks in Technology
See All in Technology
スタートアップにおける組織設計とスクラムの長期戦略 / Scrum Fest Kanazawa 2024
yoshikiiida
13
3.6k
開発生産性をむしろ向上させる セキュリティパートナーの作り方 / Dev Productivity Con 2024
flatt_security
0
360
推薦システムを本番導入する上で一番優先すべきだったこと~NewsPicks記事推薦機能の改善事例を元に~
morinota
0
120
目標設定は好きですか? アジャイルとともに目標と向き合い続ける方法 / Do you like target Management?
kakehashi
10
3k
簡単に始めるSnowflakeの機械学習
nayuts
1
190
さらに高品質・高速化を目指すAI時代のテスト設計支援と、めざす先 / AI Test Lab vol.1
shift_evolve
0
190
「我々はどこに向かっているのか」を問い続けるための仕組みづくり / Establishing a System for Continuous Inquiry about where we are
daitasu
0
170
20240724_cm_odyssey_hibiyatech
hiashisan
0
110
楽しくGoを学び合う、LayerXの勉強会文化 / LayerX's study culture of having fun and learning Go together
ar_tama
2
350
サーバーレスAPI(API Gateway+Lambda)とNext.jsで 個人ブログを作ろう!
shuntaka
PRO
0
560
Scaling Technical Excellence at 104: Evolution in AWS and Developer Empowerment
scotthsieh825
1
150
可視化プラットフォームGrafanaの基本と活用方法の全て
hamadakoji
0
230
Featured
See All Featured
Web development in the modern age
philhawksworth
203
10k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
26
2.1k
Speed Design
sergeychernyshev
9
270
Building Better People: How to give real-time feedback that sticks.
wjessup
357
18k
Code Reviewing Like a Champion
maltzj
517
39k
The Mythical Team-Month
searls
217
43k
Writing Fast Ruby
sferik
623
60k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
90
47k
Why Our Code Smells
bkeepers
PRO
332
56k
Agile that works and the tools we love
rasmusluckow
325
20k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
24
1.8k
Fontdeck: Realign not Redesign
paulrobertlloyd
79
5.1k
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.