Функция Firestore в подсчете транзакций слишком медленная - PullRequest
0 голосов
/ 09 марта 2019

Я бы хотел повысить производительность своего счетчика, чтобы вы могли достоверно сообщать о количестве продуктов в моих коллекциях. Продукты могут быть введены или удалены. По этой причине я создал специальную переменную, которая уменьшается или увеличивается при удалении или вставке товара. Счетчик работает хорошо, но медленно. Как я могу сделать счетчик быстрее? Код ниже - это функция, которая перехватывает создание продукта:

   exports.createProduct = functions.firestore
  .document('products/{id}')
  .onCreate((snap, context) => {
    var InfoProduct= db.collection('system').doc('info');

    db.runTransaction(function(transaction) {
    return transaction.get(InfoProduct).then(function(sfDoc) {
        if (!sfDoc.exists) {
            throw "Document does not exist!";
        }
        var newTotalProduct = sfDoc.data().totalProducts + 1;
        transaction.update(InfoProduct, { totalProducts: newTotalProduct });
        });
    });
    return true;
   });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...