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
620
akibago-2018-10-30
yuukigoodman
0
60
serverless-design-and-streaming-date-processing-service
yuukigoodman
0
770
alexa-changes-development-process
yuukigoodman
0
1.3k
VUIとAlexaによるちょっと未来の体験の話2
yuukigoodman
0
700
regrowth2016alexa
yuukigoodman
0
1.1k
Rails App Deployment with CodeDeploy
yuukigoodman
0
1.2k
cognito-userpools-in-production
yuukigoodman
4
8.1k
aws-lambda-in-practice
yuukigoodman
2
1.8k
Other Decks in Technology
See All in Technology
Azure Container Apps + Bicep 〜 こんな感じで運用しています
kaz29
2
440
プラットフォームってつくることより計測することが重要なんじゃないかという話 / Platform Engineering Meetup #8
taishin
1
340
ServiceNow Knowledge 24の歩き方 EYストラテジー・アンド・コンサルティング
manarobot
0
180
アクセス制御にまつわる改善 / Improving access control
itkq
0
510
20240418_Google ColabにLLMが搭載されたようなのでPython x データ分析の勉強方法を考えてみる
doradora09
0
120
プロトタイピングによる不確実性の低減 / Reducing Uncertainty through Prototyping
ohbarye
5
380
Meta Quest 3 で動く桜マシマシ WebXR アプリを IBM Cloud Code Engine と Babylon.js で作った話
1ftseabass
PRO
0
120
エンジニア候補者向け資料2024.04.24.pdf
macloud
0
3.3k
家族アルバム みてねにおけるGrafana活用術 / Grafana Meetup Japan Vol.1 LT
isaoshimizu
1
240
Next'24 事例セッションの紹介とクラウド資格を活用したキャリア形成について語りMuscle
yasumuusan
1
430
日本におけるデータエンジニアリングのこれまでとこれから
foursue
16
4.1k
Cloud Native Java with Spring Boot (CNCF Aarhus, April 2024)
thomasvitale
1
160
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
How to train your dragon (web standard)
notwaldorf
73
5.2k
Build your cross-platform service in a week with App Engine
jlugia
225
17k
Teambox: Starting and Learning
jrom
128
8.4k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
9
8.3k
Reflections from 52 weeks, 52 projects
jeffersonlam
345
19k
StorybookのUI Testing Handbookを読んだ
zakiyama
13
4.6k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
125
32k
Gamification - CAS2011
davidbonilla
76
4.6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
20
1.9k
Thoughts on Productivity
jonyablonski
58
3.8k
GitHub's CSS Performance
jonrohan
1025
450k
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.