Upload
yuki0211s
View
1.912
Download
2
Embed Size (px)
Citation preview
AWS Mobile Hubで構築する クラウドネイティブ モバイルアプリアーキテクチャ
re:Growth 2015 #3
Yuki Suwa Mobile App Developer, Classmethod
#cmdevio
諏訪 悠紀• クラスメソッドのモバイルアプリサービス部所属
• モバイルアプリのデザイン、開発を担当
• AWS モバイルアプリ向けサービスの活用
• Developers.IO の一番上に居ます
• このたび初めて re:Invent に参加!
• ラスベガスのカジノで $1 勝ちました
2
モバイルアプリ開発に求められるもの
3
1Ability to
Scaleスケール可能な アーキテクチャ
2Application
Quality高品質, 良いUX
3Development
Ease容易な開発
参考 : (MBL202) Mobile State of the Union: Mobile Apps Powered by AWS
クラウドネイティブとは• クラウドで提供されているサービスを利用することを前提に構築するシステム、アプリケーション
• 1からすべてを作りこんでいくのではなく、効率的かつ簡単にシステム、アプリケーションを構築
• 開発者は構築するシステム、アプリケーションの中身 (最も価値のあるところ) の開発に注力
4
参考 : クラウドネイティブ化する未来
AWS Mobile Hub とは
• モバイルアプリの構築、テスト、モニタリングのプロセスを簡潔にするためのサービス
• サービスのインテグレーションや構成などといったアプリ開発者にとって面倒な作業をスキップ
• 機能指向、フレンドリーなコンソール
• ベータ版が提供中 (US-East-1 のみ)
6
AWS Mobile Hub の機能
• ユーザーサインイン
• プッシュ通知
• アプリのコンテンツ配信
• ユーザーデータストレージ
• アプリ分析
• クラウドロジック
• アプリのテスト7
ボタンポチポチで 構築可能!!
ユーザーサインイン• ユーザー認証機能を提供
• 有名なIDプロバイダーによるサインインが可能
• Facebook, Amazon, Google, Twitter (現在はFBのみ)
• カスタム認証も可能
• Amazon Cognito の Identity Pool を使ったユーザー認証機能の構成を自動でプロビジョニング
8
プッシュ通知• iOS, Android に対するプッシュ通知機能を提供
• Android は GCM, iOS は APNs を利用
• APNs は Development と Production を利用可能
• Amazon SNS の Platform Application を使ったプッシュ通知の構成を自動でプロビジョニング
9
アプリのコンテンツ配信• アプリのコンテンツ配信機能を提供
• 画像、動画などを含むファイルをクラウドに保存してアプリにダウンロード&キャッシュ
• CDN を利用した低レイテンシ配信も可能
• Amazon S3, Amazon CloudFront を利用したコンテンツ配信の構成を自動でプロビジョニング
10
ユーザーデータストレージ• ユーザーデータを保存・同期する機能を提供
• プロフィールや設定、ゲームの進行状況などを保存
• 写真などのようなメディアファイルも保存可能
• 複数のデバイス間でデータの同期も可能
• Amazon Cognito の Cognito Sync, Amazon S3 を使ったデータを保存する構成を自動でプロビジョニング
11
アプリ分析• アプリの使用状況や収益化のメトリクスなどを収集、測定、分析する機能を提供
• コンソールで主要なデータをグラフで視覚化
• Amazon S3 または Amazon Redshift にエクスポート可能
• Amazon Mobile Analytics を使ったアプリ分析機能を自動でプロビジョニング
12
クラウドロジック• サーバーレスで構築したモバイルバックエンドを提供
• サーバーのプロビジョニングや監視の必要なし
• コードの実行やスケールなどはAWSが自動で実施
• アプリからは直接呼び出すだけ
• AWS Lambda を使ったモバイルバックエンド構成を自動でプロビジョニング
13
アプリのテスト• アプリのテストをクラウドで実施できる機能を提供
• iOS, Android および Fire OS の実デバイスでテスト可能
• アプリの品質を高めるためのテストが実施可能
• AWS Device Farm を使ったテストを実施
• 現在はリンクのみ
14
アプリのソースコードのビルド• 利用した機能に必要な実装コードがダウンロード可能
• 最新のSDKで動作するソースコード
15
iOS • Xcode 7.0 以上
Android • Android Studio 1.3.2 以上
• API レベル 19 (KitKat) 以上でビルド
• Build-tools 21.1.2
• OS 4.0.3 (API レベル 15) 以上で動作
まとめ• Mobile Hub でモバイルアプリのバックエンドを簡単にプロビジョニング可能!
• 利用したい機能を選ぶだけで、AWSの推奨構成が理解でき、素早く構築できる
• ソースコードも後から自由に修正可能なのでカスタマイズ性も高い
• バックエンドを楽に構築して価値に直結するところに注力しよう!
19