mBaaSはどこがいい?

      2016/03/04

新しいスマホアプリを作る時にいつも悩むのがサーバーサイド側の実装です。
まあもちろんアプリだけで完結してサーバー要らないって言うのなら問題ないのですが、サービスとして開発する事を考えるとどうしても会員毎に設定やデータをサーバー側に保存する方法を考える必要があります。そこで、だいたいは以下の2つからどっちにしようかなーとなるわけですね。

方法1 自分で実装
はっきり言って面倒です。
まずサーバーを確保して、必要なミドルウェア等をインストールし、インターフェースと管理画面を実装しなくてはなりません。
開発時だけでなく、リリース後の運用も考えなくてはいけません。
ただ、自由度が最も高い方法ではあるので、他の方法で要件を満たせない場合はこれでやらないと行けない事もあります。

方法2 mBaaS
mBaaSというのは、アプリのサーバー側をクラウドで担当してくれるサービスです。
すでにインターフェースも管理画面も用意されているので、サーバー側の開発や運用がほとんど要らないのが特徴です。

簡単なサービスであれば当然mBaaSを選びたいのですが、問題はmBaaSと言ってもいくつか種類があるためどれを選んだらいい?となるわけです。
こいうのは、基本的には「ゲーム作るならUnity!」「クラウドインフラならAWS!」みたいにデファクトスタンダードを使ってればOKみたいなところがあるんですが、実はmBaaSのデファクトスタンダードに近いと思われていた「Parse」というサービスが、まさかののサービス終了宣言を発表したため、今まさに大混乱が発生しているわけです。

かく言う私も開発中のアプリにてParseを採用していたため、慌てて代わりのmBaaSを探さなくてはなりませんでした。
最初はParseが提供しているオープンソースのParseServerを自前で構築しようかとも思ったのですが、肝心の管理画面とプッシュ通知が含まれないとの事なので断念しました。
とりあえず同じ轍を踏む事だけは絶対に避けたいので、色々考えて最終的にはニフティーのmobile backendというサービスに移行しようかと思っています。
理由としてはまず、海外ではmBaaS系のサービスはスタートアップで利用する事が多く、サービスが大きくなると次第にサーバー側も自社で運用するようになる事が多いようなのですが、日本の場合はサービスが大きくなっても残ることが多いようで、大手の企業でもmBaaSを使い続けているという事情があります。
Parseはその辺りで採算が取れず事業をたたんでしまったようですが、ニフティであれば国内の事業者なのでビジネスモデル的にも継続が期待できそうだと思っています。
また公式にParseからの移行サポートも受け付けているし、ブログやセミナーにて今後のサービス継続性についての言及があったのでまあ信頼できるでしょうと。
※やはりみなさん事業の継続性は気になるようで、ニフティさんも良くこの手の質問を受けているようです。
GMOあたりでも似たようなサービスやっているみたいですが、まだ始まったばかりなようだったので今回はパスすることにしました。(値段はGMOの方が安いようですが)
ニフティでもとりあえず200万リクエストまでは無料なようなので、スタートアップ時はアクセス数に気をつけつつも無料で運用しておいて、ユーザーが増えてきたら月額3万円のプランを考えようと思います。

あと、心配なのが移行作業とドキュメント類ですが、公式ドキュメントがサービス登録すると読めるので、こちら参照すれば何とかなりそうな感じでした。
Parseの場合はgoogle先生に聞けば色々(英語ですが)教えてくれたのですが、ニフティーの場合はちょっと難しいのでニフティー先生に直接聞くしかないですかね。あんまりこういうドメスティック臭がするサービスは本当は好きでは無いのですけどね・・・。

 - 技術系(インフラ) , ,