45
BaaS vs. バース ホームラン対決 AWS Summit Tokyo 2014 しみず

BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

Embed Size (px)

DESCRIPTION

BaaS on AWS と バース from 阪神タイガース どちらが強いのか検証しました

Citation preview

Page 1: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

BaaS vs. バース ホームラン対決

AWS Summit Tokyo 2014 しみず

Page 2: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

自己紹介 しみず @shimy_net

Page 3: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

AWS 芸人

無駄に技術を使って 面白い LT をする

Page 4: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

過去の発表

自転車でDynamoDB ピタゴラスイッチで AWS基盤を自動構築

KinectでEC2を キックスタート

Kinesisで元気あつめて フリーザ倒す

Page 5: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

BaaS 今回は

バース

Page 6: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

(M)BaaS とは Mobile Backend as a Service

モバイルアプリの サーバー機能を提供

Page 7: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

サーバー機能

Push 通知 認証 ユーザ管理

データ管理 GPS連携 SNS連携

BaaS モバイルアプリ

Page 8: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

海外  Parse、Buddy 国内  Kii、appiaries

 Amazon SNS Mobile Push  Amazon Cognito  Amazon Mobile Analytics  etc.

多くのサービスが展開

NEW

NEW

Page 9: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

今年は BaaS が流行る

Page 10: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

ところで

Page 11: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

バースっていったら

Page 12: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

俺のことちゃうん?

Randy Bass

Page 13: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

素朴な疑問

?

Page 14: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

BaaS バース

Batch

Randy Bass on AWS

vs.

どっちが強いの?

Page 15: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

BaaS バース

Batch

Randy Bass on AWS

vs.

どっちが強いの?

Fight

Page 16: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

対決方法

1.  BaaS を作る 2. バース を作る 3. 戦う

Page 17: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

1. BaaS を作る

Page 18: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

Push 通知 認証 ユーザ管理

データ管理 GPS連携 SNS連携

BaaS モバイルアプリ

Push 通知の BaaS を作った

Page 19: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

Amazon SNS Mobile Push ※ 足りない機能を実装する

・デバイストークンの収集

・大量メッセージの一括配信(キュー)

・履歴の取得

・未読/既読の管理

Page 20: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

Push 通知 BaaS の 構成図

APNS GCM/ADM Device Token

Device Token 要求

Device Token Payload

Payload

デバイストークン収集 Amazon SNS

DynamoDB、RDS

1

2

Endpoint Arn

Endpoint Arn

メッセージ作成

Endpoint Arn 7Endpoint Arn Endpoint Arn

Device Token

Endpoint Arn Endpoint Arn

Payload

10

Device Token 39

Batch

Amazon SQS

REST API

Page 21: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

利用した物 AWS  Amazon SNS Mobile Push  Amazon SQS  Amazon RDS (MySQL)  Amazon DynamoDB  Amazon Elastic Beanstalk  Amazon EC2

Page 22: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

利用した物 Java  Spring  Jersey JAX-RS  Hibernate JPA2  Apache Tomcat  etc.

Page 23: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

配信(Publish)

Users/ Device tokens

Messages

Authentication Publish

Spring

Jersey

Res

ourc

e

Dao

Hibernate MySQL RDS

Filte

r

Ser

vice

Batch

Dynamo DB

Dynamo DB

SNS

SQS

Publisher

Subscriber

Page 24: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

配信API(Publish API)

curl -X POST ¥ -H "X-SHIMY-Admin-Identifier: zT8IizTtKQy9hwtlKyMXs1sl2IO4a95UIbaRREwp" ¥ -H "X-SHIMY-Admin-Secret-Key: zRrmnZn3wEidyuUGU2vJSDL1vYhvemZD3CDrX5JT" ¥

-H "Content-Type: application/json" ¥ -d '{ “alert” : ”メッセージだよ", “title”: ”タイトルだよ", “detail” : ”詳細内容だよ", "sound" : "default",

"badge" : ”1" }' ¥ http://localhost:8080/randy/v1/push-admin/send

Page 25: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

BaaS ができた(オレ専用)

無駄に Scale する 豪華仕様!

Page 26: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

APIのデモ

Page 27: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

履歴API(History API)

curl -X GET ¥ -H "X-SHIMY-App-Identifier: zT8IizTtKQy9hwtlKyMXs1sl2IO4a95UIbaRREwp" ¥ -H "X-SHIMY-App-Secret-Key: zRrmnZn3wEidyuUGU2vJSDL1vYhvemZD3CDrX5JT" ¥

-H "Content-Type: application/json" ¥ -d '{ "identifier" : "8c30e162-b16a-4724-aa4b-312617d04789" }' ¥ "http://localhost:8080/randy/v1/push/messages?offset=2014%2d07%2d01%2018%3a28%3a36&count=2"

Page 28: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

履歴を5件取得

Page 29: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

2. バースを作る

Page 30: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

バットを用意する

Page 31: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

スマホを埋め込む

Page 32: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

加速度センサーで バッティングを検知して Push 配信

バッティングを判定

Push配信

Page 33: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

加速度の大きさで飛距離が変化 ※ メッセージが変化

150m 70m -d '{

“alert” : ”150m",

“title”: ”", “detail” : ”",

"sound" : "default", "badge" : ”1" }' ¥

-d '{

“alert” : ”70m",

“title”: ”", “detail” : ”",

"sound" : "default", "badge" : ”1" }' ¥

Page 34: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

Push 受信アプリ

ホームランをねらえ

Page 35: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

BaaS Push POST

Batch

バース

守備 攻撃

on AWS

Page 36: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

準備は整った

Page 37: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

3. 戦う

※BGMを忘れずに

Page 38: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

バース

Batch

Randy Bass

vs.

ガチンコ勝負

ピッチャー バッター

BaaS on AWS

AWS代表

Osaka 代表

Page 39: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

デモ

Page 40: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

というわけで

Page 41: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

ボールに届かない・・・と思いきや

Page 42: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

Amazon の力強い助っ人が登場!

Page 43: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

見事 キャッチ!

Page 44: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

バース on AWS BaaS

vs.

勝利!! AWS は BaaS も強い!

Page 45: BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk

Please take me to

re:Invent

Thank you very much.