Google App EngineとFirebase

iam10k;

どのオプションを選択するかを決定しようとしています。(または、より良い場合は別の方法)これは、大量の通知とデータベースの書き込みが発生するメッセージングタイプのアプリ用です。

オプション1 -Cloud EndpointsとCloud Datastore
Pro を使用するGoogle App Engine

  • 思い通りにAPIを構築できる。
  • スケーラブル

短所:

  • 通知システムを実装するためのさらなる作業。(最終的にはFirebase Cloud Messagingになります)

オプション2 -Firebase
プロ:

  • Firebaseデータベース、Firebaseユーザー認証、Firebase Cloud Messaging(通知)を使用できる
  • すべてのデバイスの詳細な使用統計

短所:

  • APIなし

オプション3 -Google Cloud EndpointsとFirebaseを組み合わせることができますか?

マイクロ:

まず、Googleドキュメントのこちらのグラフを見て、提供するさまざまなモバイルアプリバックエンドサービスの優れた比較と対比を確認してください。これがチャートです:

ここに画像の説明を入力してください

私の個人的な意見は(更新)です。

オプション1 -Cloud EndpointsとCloud Datastore
Pro を使用するGoogle App Engine

  • 独自のAPIを作成する落ち着いたパターンについて、さらに詳しく学びます。また、(iOSまたはAndroidを使用して)安静なapi呼び出しを行う方法を学ぶ必要があり、それは業界で非常に貴重なスキルです。Firebaseは一種のすべてをあなたに代わって行い、あなたはこのことを学ぶことはありません。
  • You have to write it yourself, but you can get really creative with your API methods and Google Cloud Messaging and the type of methods you create. They can really do anything and connect to any database too (e.g. MySQL, SQL Server, Datastore). In Firebase you must use their json based database. I don't recommend using a SQL database for an app but different people have different needs.

Cons:

  • It takes more work and wrapping your head around datastore can be hard at first. It is not like a relational database like SQL.
  • Also I feel there are a few areas where you can "shoot yourself in the foot" by creating methods and queries that are very inefficient and thus take a long time to run.
  • One thing that is annoying for new apps is the automatic-scaling in GAE. Long story short, if no one hits your API for about 15min then all instances are shut off. Once a new call is made, it takes a significant amount of time to fire an instance back up, and execute your API method. This can be annoying for new apps because new users might thing there is something wrong with the app and thus the may stop using it. You can do manual-scaling but then that costs money to have an instance on all the time (as of this writing around $27/month from my billed apps). See my post here for more information on this issue and a solution I came up with.

Option 2 - Firebase
Pros:

  • It is made to be easy to use for beginners and there are ample tutorials/courses on Firebase to do those popular things you want to do like send push notifications and sync data.
  • Unlike GAE, it is fast out of the box. No firing up instances. This makes it great for new apps that want to impress users with their fast data gets.
  • You can get around learning the nitty gritty of complicated things like adapters (Android) and networking (in mobile apps) and just rely on the Firebase classes. Maybe it is a little more noob friendly? Again, the documentation is great and out-of-the-box I think there are less chances to shoot yourself in the foot by writing inefficient queries.

Cons:

  • Firebase is heavy on client code. If you want an Android and an iOS app you have to write a lot of client code for both. In GAE, a lot of that logic is abstracted away in the GAE app. But this could be an advantage if you don't really want database admins in your app and just have iOS + Android developers who know Firebase. But for me this was the big turn off.
  • FirebaseがParse.comの道を進んだらどうなるか... Facebookが彼らがもうそれをサポートしないことを発表したところ。それは本当に最悪です!あなたはFirebaseに閉じ込められており、安らかなAPIを作成する方法に関するプログラミング知識を開発していません。ただし、GoogleはFirebaseに多額の投資を行っており、現在GCMをFirebase Cloud Messagingにアップグレードしているため、Firebaseに大きな計画があり、どこにも進まないことは明らかです。だから、これは「詐欺」とはみなされないと思いますが、覚えておいてください。

おそらくそれらを組み合わせるためのリンクで詳細を読んでください。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Google App EngineとFirebase

分類Dev

通知に Google App Engine と Firebase Cloud Messaging を使用する

分類Dev

Google App Engine(GAE)とAndroid

分類Dev

RSA in Google App Engine

分類Dev

google app engine and mongodb

分類Dev

Starting app engine modules in Google App Engine

分類Dev

Google App Engine - App was unable to send logs

分類Dev

Google App EngineのFlaskとwebapp2

分類Dev

Google App Engineと404エラー

分類Dev

Google App EngineとJavaバージョン?

分類Dev

Google Cloud:ストレージとApp Engine

分類Dev

Google App Engine Channel API

分類Dev

Google App EngineのOSGI?

分類Dev

Is Google App Engine memcache secure?

分類Dev

Google App Engine / _ah / health

分類Dev

Google App Engine Endpoints with Maven

分類Dev

Porting Application to Google App Engine

分類Dev

Google App Engine Java API

分類Dev

Google App Engine Java API

分類Dev

OAuth for Google App Engine Python

分類Dev

Google App EngineとGoogle Compute Engineの違いは何ですか?

分類Dev

Google App Engine FlexibleとGoogle Container Engineの違いは何ですか?

分類Dev

Google Compute Engine for Web Server or App Engine

分類Dev

What is the difference between Google App Engine and Google Compute Engine?

分類Dev

GoogleカレンダーとGoogle App Engineの統合

分類Dev

Google App Engine、JDO、equals / hashCode

分類Dev

Google App Engine JavaのHttpOnly Cookie

分類Dev

Google App Engine(GAE)のThreadLocal

分類Dev

google app engine datastore Go Query with "in" operator