2016-03-24 15 views
1

Firebase:Firebaseの値を同じ値に設定すると帯域幅が使用されますか?

{exampleValue: "something";} 

Javascriptを:

var ref = new Firebase(url + "/exampleValue"); 
ref.set("something"); 

上記のように、私は、同じ値にFirebaseに値を設定するの周りの質問のカップルを持っています。

  1. それはユーザーのための帯域幅を使用していますか?
  2. それは私のFirebase計画のための帯域幅にはカウントしていますか?

答えて

3

tl; dr:同じ値で複数回038を呼び出すと、毎回帯域幅が使用されます。

あなたは簡単にこれらの事を自分でテストすることができます。私は次のことをやった:Chromeデベロッパーツールで「ネットワーク」タブを開き、Firebaseと通信のWebSocket(「WS」)を見つけます。そのWebソケットの「フレーム」タブには、Firebaseクライアントがサーバと通信する内容が正確に表示されます。

は、デベロッパーコンソールで次のコマンドを実行します。

var newRef = ref.push(); 

これは新しいパス/場所を発生し、まだFirebaseサーバには何も送信しません。次に:

newRef.set('This is a value'); 

これは値を設定するので、帯域幅を使用します。

は、その後、私は再び同じことを実行しました:

newRef.set('This is a value'); 

をこれが再びFirebaseデータをサーバーに送信されますので、帯域幅を使用しています。あなたはそれについて考えるとき

、これも意味があります。 Firebaseクライアントはローカル状態のみを認識します。他の人が値を変更したなどの理由で、サーバー上の値が異なる可能性があります。したがって、値を設定するように指示するときは、そのコマンドをサーバーに送信して、値が実際にデータベースに書き込まれるようにする必要があります。

+0

おかげでフランク。何らかの理由で今まで私はそうではないと思っていましたが、データを複数回読み取るために一度ダウンロードするデータと一度だけ混同してしまったと思います。 –

関連する問題