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

10,296 views
10,042 views

Published on

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

Published in: Technology
0 Comments
53 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
10,296
On SlideShare
0
From Embeds
0
Number of Embeds
1,281
Actions
Shares
0
Downloads
20
Comments
0
Likes
53
Embeds 0
No embeds

No notes for slide

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

  1. 1. BaaS vs. バース ホームラン対決 AWS Summit Tokyo 2014 しみず
  2. 2. 自己紹介 しみず @shimy_net
  3. 3. AWS 芸人 無駄に技術を使って 面白い LT をする
  4. 4. 過去の発表 自転車でDynamoDB ピタゴラスイッチで AWS基盤を自動構築 KinectでEC2を キックスタート Kinesisで元気あつめて フリーザ倒す
  5. 5. BaaS 今回は バース
  6. 6. (M)BaaS とは Mobile Backend as a Service モバイルアプリの サーバー機能を提供
  7. 7. サーバー機能 Push 通知 認証 ユーザ管理 データ管理 GPS連携 SNS連携 BaaSモバイルアプリ
  8. 8. 海外  Parse、Buddy 国内  Kii、appiaries  Amazon SNS Mobile Push  Amazon Cognito  Amazon Mobile Analytics  etc. 多くのサービスが展開 NEW NEW
  9. 9. 今年は BaaS が流行る
  10. 10. ところで
  11. 11. バースっていったら
  12. 12. 俺のことちゃうん? Randy Bass
  13. 13. 素朴な疑問 ?
  14. 14. BaaS バース Batch Randy Bass on AWS vs. どっちが強いの?
  15. 15. BaaS バース Batch Randy Bass on AWS vs. どっちが強いの? Fight
  16. 16. 対決方法 1.  BaaS を作る 2.  バース を作る 3.  戦う
  17. 17. 1. BaaS を作る
  18. 18. Push 通知 認証 ユーザ管理 データ管理 GPS連携 SNS連携 BaaSモバイルアプリ Push 通知の BaaS を作った
  19. 19. Amazon SNS Mobile Push ※ 足りない機能を実装する ・デバイストークンの収集 ・大量メッセージの一括配信(キュー) ・履歴の取得 ・未読/既読の管理
  20. 20. 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 7 Endpoint Arn Endpoint Arn Device Token Endpoint Arn Endpoint Arn Payload 10 Device Token3 9 6 4 5 8 Batch Amazon SQS REST API
  21. 21. 利用した物 AWS  Amazon SNS Mobile Push  Amazon SQS  Amazon RDS (MySQL)  Amazon DynamoDB  Amazon Elastic Beanstalk  Amazon EC2
  22. 22. 利用した物 Java  Spring  Jersey JAX-RS  Hibernate JPA2  Apache Tomcat  etc.
  23. 23. 配信(Publish) Users/ Device tokens Messages Authentication Publish Spring Jersey Resource Dao Hibernate MySQL RDS Filter Service Batch Dynamo DB Dynamo DB SNS SQS Publisher Subscriber
  24. 24. 配信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
  25. 25. BaaS ができた(オレ専用) 無駄に Scale する 豪華仕様!
  26. 26. APIのデモ
  27. 27. 履歴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"
  28. 28. 履歴を5件取得
  29. 29. 2. バースを作る
  30. 30. バットを用意する
  31. 31. スマホを埋め込む
  32. 32. 加速度センサーで バッティングを検知して Push 配信 バッティングを判定 Push配信
  33. 33. 加速度の大きさで飛距離が変化 ※ メッセージが変化 150m 70m -d '{ alert : 150m", title : ", detail : ", "sound" : "default", "badge" : 1" }' ¥ -d '{ alert : 70m", title : ", detail : ", "sound" : "default", "badge" : 1" }' ¥
  34. 34. Push 受信アプリ ホームランをねらえ
  35. 35. BaaS PushPOST Batch バース 守備攻撃 on AWS
  36. 36. 準備は整った
  37. 37. 3. 戦う ※BGMを忘れずに
  38. 38. バース Batch Randy Bass vs. ガチンコ勝負 ピッチャー バッター BaaS on AWS AWS 代表 Osaka 代表
  39. 39. デモ
  40. 40. というわけで
  41. 41. ボールに届かない・・・と思いきや
  42. 42. Amazon の力強い助っ人が登場!
  43. 43. 見事 キャッチ!
  44. 44. バース on AWS BaaS vs. 勝利!! AWS は BaaS も強い!
  45. 45. Please take me to re:Invent Thank you very much.

×