mBaasを使うか検討しているので、各サービスをまとめてみます。(2015年5月15日現在)
#Parse
https://www.parse.com/
- Facebookが買収した
- mBaasといえば、Parseみたいなところがある。
- 無料枠:30requests per second(他省略)
- ストレージ、プッシュ通知、ユーザー管理など多機能揃ってる
- 各言語のSDKが充実している
- アクセスポイントはアメリカなので、日本からはやや遅いらしい
####私の見解
- 小さい規模や、プロトタイプで使うにはよさそう。トラフィックが長期的に多いアプリはコスト高になる。
- 多機能充実している=良くも悪くも、そこに依存しやすくなるだろう
####参考記事
サーバーサイド実装を1行もせずにバックエンドと連携するiOSアプリを開発する
mBaaSの「今」がわかる!ぶっちゃけ仮想パネルディスカッション!
[MBaaS] Parseで簡単モバイルバックエンド構築 – 【ざっと概要】
#Firebase
https://www.firebase.com/
- こちらもgoogleが買収済み
- ストレージの同期が強み。例えばチャットアプリとかでメッセージを送ったら、即座に相手にも更新されるみたいな。
- オフラインにも強い。上記の例でオフラインから解除されたら同期されてメッセージが届く
- 無料枠:50 Max Connections(他省略)
####私の見解
- 同期的なアプリを作るにはよさそう、もし自前でやろうとすると大変だろうから。
- 料金も比較的、ゆるやかな気がする。
####参考記事
準リアルタイムなバックエンド開発を支援するGoogleのFirebase
#Microsoft Azure
http://azure.microsoft.com/ja-jp/services/app-service/mobile/
- 普段からAzureを使っているような場合には最適
- C#やnode.jsでカスタムAPIを作れる
- 無料枠:500kリクエストまで(他省略)
- 各所にデータセンターがあるから、速いみたい
####私の見解
- ごめん、Azure使ったことがない。
#Google Cloud Platform(Cloud Endpoints)
https://cloud.google.com/endpoints/
- App Engine および Compute Engineを使っているなら無料で使える
- PythonかJavaで使える
####私の見解
- Androidの説明やSDKは手厚いけど、iosの対応が微妙そう。Firebaseも買収したのでいつか統合するのかな?
#AWS Mobile Service
http://aws.amazon.com/jp/mobile/
いろいろ細分化されているので、使いたいものを選べます。
#####Amazon DynamoDB
http://aws.amazon.com/jp/dynamodb/
- NoSQLのデータベース
#####Amazon S3
- データストア
#####Amazon Cognito(発音:コグニート)
http://aws.amazon.com/jp/cognito/
- ユーザーのアカウント管理に特化したサービス
- ユーザー認証とユーザーデータを保持できる
#####Amazon SNS
- プッシュ通知
#####AWS Lambda
- イベント処理
####私の見解
- おそらく長期的にも必要な分だけ、少額で利用出来るので使ってみたい。
- やはり機能を細分化しているAWSってすごい。
#その他
#他の類似の選択肢
- mbaasのオープンソースを使う(Deployd、BaasBoxなど…詳しいことは知りません)
- MongoDBのREST APIを使う
#最後にmBaaSの選定について考えること
- アプリの特性や、規模、継続性など色々加味して導入を決める必要がある
- 個人規模の開発にはうってつけ
- APIやSDKも様々なので、使うところを良く確認したほうがいい
- カスタマイズ性の高いものがあるが、あまりカスタマイズしていたら自分でAPIのサーバーを作ったほうが良くなってしまうだろう
- やっぱりどのサービスもコストの計算がしづらい。コストのシミュレーションできるツールがほしい。
- mBaaSはまだまだこれから感が強い。ただ今後重要になってくる。
他にこんなのあるよーとか、コメントどうぞ。