firestore複数コレクションの取得はPromise.allを使うと若干早い

firestore複数コレクションの取得はPromise.allを使うと若干早い

LINEで送る
Pocket

firestoreの取得速度を図ってみたのですが、Promise.allを使った方が若干早かったです。

コレクションにはそれぞれ100件ずつドキュメントを突っ込んでいます。

1.それぞれ同期的に取得

await db.collection('users').get().then(docs => docs)
await db.collection('cars').get().then(docs => docs)

ユーザー一覧と車一覧を同期的に全件取得しています。

 

2.Promise.allで取得

const [ userDocs, carDocs ] = await Promise.all([
  db.collection('users').get().then(docs => docs)
  db.collection('cars').get().then(docs => docs)
])

 

結果

一回目

1: 1343ms

2: 1331ms

二回目

1: 1211ms

2: 1196ms

三回目

1: 1008ms

2: 996ms

 

平均で10ミリ秒早かった

LINEで送る
Pocket

フロントエンド開発でお困りのことはありませんか?

フロントエンドの開発支援を行っています。

・Reactの開発をお願いしたい

・コーディング作業を依頼したい

・javascriptライブラリを作って欲しい。

上記以外にも何かありましたらお気軽にお問い合わせください。

コメントを残す