в настоящее время я хочу сделать систему уведомлений, у меня есть root коллекция с именем notifications
, и внутри каждого документа уведомления у меня будет receivers
подколлекция
Я напишу некоторые идентификаторы пользователя внутри receivers
подколлекции, используя Пакетная операция, как это в моей функции вызываемого облака
let batch = db.batch()
querySnapshot.docs.forEach( snapshot => {
const data = snapshot.data()
const userID = data.userID
let notificationReceiverRef = db.doc(`notifications/${notificationID}/receivers/${ID}`)
batch.set(notificationReceiverRef, {
userID: userID,
createdAt: now
})
})
await batch.commit()
, но я только что прочитал некоторые ограничения в firestore в здесь , сказано, что я должен сохранить скорость операций записи для отдельного сбор до 1000 операций в секунду.
в моем приложении есть вероятность, что я напишу около 10.000 - 50.000 документов в подколлекции receivers
, чтобы вести учет получателя уведомления.
но я не знаю, буду ли я превышать эту 1000 операций в секунду или нет, если использую пакетную операцию, как код, который я пишу выше. будет ли облачная функция автоматически управлять этим? если нет, что произойдет, если я превыслю этот лимит?
У меня нет других идей, как хранить много записей, но также соблюдать лимит.