ファイヤーストアでは、接続されたユーザーがクラウド関数を呼び出してクラウドファイヤーストアからデータを取得するためのより良い方法はありますか?

マイクK。

CloudFirestoreにデータを保存するWebサイトがあります。さまざまなAPIにアクセスして新しいデータをデータベースに保存すると、データベースは毎分更新されます。

この更新されたデータを毎分ユーザーに提供する必要があります。現在、私は毎分、ユーザーのブラウザーが新しいCloud Function呼び出しを行い、それがCloud Firestoreに送信され、新しいデータを取得するようにしています。ただし、ユーザーがブラウザを1日中開いたままにしておくと、1,440件のリクエストが発生することを想像してみてください。

Cloud Functionsは、無料で2,000,000のリクエストしか提供しません。ユーザーが多い場合、それらのリクエストはすぐに使い果たされてしまいます。このデータを毎分ユーザーに提供し、Cloud Functionsのクォータを使い果たしないようにするためのより良い方法はありますか?おそらく、私は自分のソケットを作成して、ユーザーにそれに接続させることができますか?クォータにあまり追加せずに、そのソケットを毎分更新する方法を確認する必要がありますが。

フランク・ヴァン・パッフェレン

Firebaseを使用すると、クライアントはCloud Firestoreに直接接続して、リアルタイムの更新をリッスンできますこれにより、そのデータをポーリングする必要がなくなり、クラウド機能が不要になります。

リアルタイムリスナーのアタッチは、(ドキュメントから)次のように簡単に行うことができます。

 db.collection("cities").doc("SF")
    .onSnapshot(function(doc) {
        console.log("Current data: ", doc.data());
    });

上記のonSnapshotコールバック/cities/SFドキュメントが更新されるたびにトリガーされます。同様に、コレクション全体にリスナーをアタッチできます。

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

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

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ