6月3日AWS Summit Tokyo 2016に行ってきた!のつづき
AWSを使ったモバイルアプリの設計と実装
をメモメモ
■AWSを使ったモバイルアプリの設計と実装
・自己紹介
・このセッションについて
対象者:モバイルアプリエンジニア
AWSでモバイルアプリ
・AWSモバイルサービス
どんなジャンルでも
プラットフォーム向け完備
モバイル向けサービス
モバイルからも触れるサービス
・ユーザー認識、アクセス許可、データ同期、ユーザー行動分析
プッシュ通知の送信、実機テストの並行実行 AWS デバイスファーム
・AWS Mobile SDK
共通の認証機構
オフラインを自動でハンドリング
ローカルオフラインキャッシュ
メモリフットプリント
。モバイルアーキテクチャ分類
Generaal Web JSON
サーバレス
APIゲートウェイ
2-Tier AWS APIコール
横断的
1.一般的なWebのアーキテクチャ
・スタンダードなパターン
ELB、EC2、RDS
メリット :枯れた安定性のある構成
デメリット:サーバーのスペック、台数
2.サーバレスアーキテクチャ
APIゲートウェイ、Lambda,dynamoDB
メリット:セキュアなAPIアクセス
デメリット:まだ枯れていない
3.2-Tire
クライアントアプリから直接
メリット:スケールはAWS、コグニートでセキュア、最小限のパーツ
デメリット:マネジメントしにくい
→AWS モバイル Hub
2-Tireアーキテクチャをプロビジョニング、
スタートアップアプリを自動生成
どのアーキテクチャを採用すべきか
・組み合わせ
横断するサービス
・クラウドフロント、S3
・Kinesis
・Amazon Cognito User Pools
まねーじどなユーザー管理基盤
Lambdaでフック処理
・Mobile Analytics
グロースハックに役立つ
マネタイズイベント
S3,Redshiftへオートエクスポート
サンプリングしない
・AWS デバイス ファーム
自前で実機なくてもOK
Fuzzテスト(モンキーテスト)をすぐにできる
JenkinsとGradle
シンプルなアプリ側の実装
・こぐにと あいでんてぃてぃから
・Lambdaのインボーク
・Githubで動くサンプル
・ケーススタディ
【ゲスト】グノシー 松本さん
・自己紹介
・現行プロジェクトの背景
KDDI様と協働 ニュースパス
・課題
非常に小さいチーム、4カ月、
・AWsを如何に活用したか
AWSをフル活用してのアーキテクチャ設計
クライアントへの処理委譲
サーバレスアーキテクチャ
・クライアントに対する処理委譲
AWS Mobile SDKを利用
・通知のトークン管理をSNSで
・ログの配送はkinesisへ
・サーバーレスアーキテクチャの部分的適用
すべてをサーバーレスにしない
非同期で運用可能なものほど向いている
・開発にあたってのTips
Cognito Syncによるサーバーレスなユーザー管理
・KInesisによるログ管理フロー
MobileSDKからの送信
バルクで送信
・最後に
めんばー募集中→Wantedlyで
まとめ
・モバイルアプリ開発時にはAWSを柔軟に活用
・トータルにサポート
・AWS SDKでクライアント側の実装もバッチリ
・サーバーレスアーキテクチャ
ふろく
・2-TireとmBaaSとの違い
mBaaSは抽象度高い→カスタマイズ性に限界
・Parse.comからAWSへの移行サポート
またはお近くのAWS Japan