ほぼ日AWS について
AWSのソリューションについて学んでいく為に、以下のAWS管理画面で見れるすべてのサービス
について、どんな時に使われてそれらがどんなソリューションなのかまとめてみたいと思います。
※ ちなみに著者はAWS初心者勢です。
ソリューションがどういうものかに重点をおいて調べてまとめているだけですので、ノウハウTipsの提供等はできません。
このブログの目標
読んだ方(主に自分)が、AWSのソリューションについて 「ああ、AWSののこのソリューションって〜〜〜っていうもんでしょ?」ってざっくり理解するのに手助けになれば幸いです。
では、本題。
モバイルサービス ソリューション について
クラウド対応のアプリケーションを構築する為のソリューション。
サーバーレス技術を活用する事でサーバーのプロビジョニング等に工数を割かれる事なくコードを実行させたり、構築・テスト・デプロイなどを自動化したり出来る。
主として以下のサービスが提供されている。
Mobile Hub
何ができるのか
Mobile Hubはモバイルアプリケーションを構築する為の機能の選択や設定の手順を提供する為のサービス。 これに従って設定を行う事でアプリケーションの機能に必要なAWSのサービスが自動的にプロビジョニングされる。
例えば、以下の機能を組み込む事が出来る。
MFAログインを備えたサインインUI。
Twitter、Facebook、Google+など、各種ソーシャルログインを通してユーザーのサインイン、サインアップのワークフローをアプリケーションに追加出来る。 (こちらは Amazon Cognito を使用する)
ストレージ機能
ユーザーの写真などのユーザーファイルやユーザーデータを保持する事が出来る。( Amazon Cognito および Amazon S3 を使用する)
サーバーレスクラウドの機能
サーバーの構築に煩わされない、AWSの提供するサーバーレスアプリケーションを利用したアプリケーションを作成することが出来る。 Amazon API Gatewaty および AWS Lambdaを利用する事でユーザーは ソースコードのアップロードとAPIの設定 そしてそれらをモバイルアプリケーションから呼び出すだけに集中する事ができる。
その他にも - データベース - 対話ボット - 実機デバイステスト - プッシュ通知
などのサービスも利用出来る。
無料利用枠ある?
AWS Mobile Hub 自体には料金は発生しない。
東京リージョンある?
リージョンって概念が無いが、各機能毎に東京リージョンがあるかどうかによって利用出来るかどうかが変わる。
主なユースケース
特徴に上げたとおりだが、このサービスを使う事でAWSクラウドを使用したアプリケーションの機能をセットアップするのを助ける。
AWS AppSync
何ができるのか
AWS AppSyncでは、ウェブアプリケーションやモバイルアプリケーション内のデータがリアルタイムに自動的に同期されるいわゆるリアルタイムデータベース
のマネージドサービス。
オフライン対応もされており、再接続時に自動でデータが同期される。
AWS AppSync により、応答性に優れたモバイルアプリケーション・ウェブアプリケーションを簡単に構築出来る。
GraphQLというオープンの標準クエリ言語を使用しており、クラウドからのデータを簡単にリクエスト出来る。
つい最近正式リリースとなった。
無料利用枠ある?
あるよ。
以下分が無料として提供される。
- 250,000 件のクエリまたはデータ変更操作
- 250,000 件のリアルタイム更新
- 600,000 接続-分
※ 上記は サインアップから1年後に失効する。
東京リージョンある?
無い。
主なユースケース
Firebaseで構築していたリアルタイムデータベースと同じぐらいの事はできそう。
ウェブ - モバイルでの共有チャットアプリケーションとかで有効に使えそうと思った。
Device Farm
何ができるのか
AWS Device Farmはアプリケーションテストサービス。 実際のモバイルデバイスを使ってテストを実行する事が出来る。
複数のデバイスで Android/iOS 向けのアプリケーションやウェブアプリケーションを一度にテストおよび操作する事や、端末依存の問題を発見・トラブルシューティングする事に役立つ。
無料利用枠ある?
あるよ。
最初の1,000デバイス分が無料で提供される。
東京リージョンある?
リージョンって概念が無さそう。
主なユースケース
作成されたとおり、実機テストを行う為に役立てる。
Mobile Analytics
何ができるのか
※ Mobile Analytics の一部であった機能はすべて Amazon Pinpoint で利用出来るようになった。
元々は、 アプリケーションの使用状況や収益を計測する事が出来るサービスだった。
主なユースケース
現在は Amazon Pinpointの利用を公式で推奨されている。
所感
AppSync ちょっと試してみたけど、GraphQL辛いな。。。
リアルタイムDB系は結構好きなので使ってみたかった!