アップデート(2017年3月10日):私は以下の概要アーキテクチャがまだ有効であると、既存のインフラストラクチャとFirebaseを組み合わせるために使用することができますが、FirebaseはちょうどCloud Functions for Firebaseをリリースし、Googleの上のJavaScript関数を実行することを可能にしますFirebaseのイベント(データベースの変更、サインインしているユーザーなど)に対応したサーバー
Firebaseアプリケーションの一般的なアーキテクチャはかなりこのブログ記事Where does Firebase fit in your app?で明確に定義されています。
あなたが提案したアーキテクチャはアーキテクチャー3に最も近く、クライアント側のコードはnode.jsサーバーに直接FireBlaster との両方に直接話します。
クライアントとサーバー間のすべてのやりとりがFirebaseを経由するオプション2を検討することを強くお勧めします。このタイプのアーキテクチャの大きな例はFlashlight search integrationです。クライアントは検索クエリをFirebaseデータベースに書き込みます。サーバーは、そのような要求をリッスンし、照会を実行し、応答をデータベースに戻します。クライアントはその応答を待ちます。このサーバーの
簡単な概要は以下のようになります。
var ref = new Firebase('https://yours.firebaseio.com/searches');
ref.child('requests').on('child_added', function(requestSnapshot) {
// TODO: execute your operation for the request
var responseRef = ref.child('responses').child(requestSnapshot.key());
responseRef.set(result, function(error) {
if (!error) {
// remove the request, since we've handled it
requestSnapshot.ref().remove();
}
});
})
クライアントが直接あなたが心配する必要は潜在的な問題のすべての種類を削除し、サーバーに話すことはありません。この最後のアプローチで。このような理由から、私は時々それらをサーバの代わりに "ボット"と呼んでいます。
大きな質問!おそらくすでに見てきたように、FirebaseはCloud Codeには直接対応していません(まだ)。私は以下にいくつかのアプローチを記述/リンクしました。何かが明確でない場合は、ちょうどコメントしてください! –
[Rob DodsonがFirebase with Polymerの使い方を説明したこのビデオはまだ見ましたか?](https://youtu.be/1f_Tj_JnStA?t=12m52s)?私はそれが非常に強力な組み合わせだと思う。 https://youtu.be/1f_Tj_JnStA?t=12m52s – Mowzer