как оптимизировать скорость отклика функции firebase


Я использую функцию firebase base на nodejs 6 и firestore, моя простая функция, как это всегда медленно.Я также обнаружил, что когда я использую set / add firestore в функции, он всегда замедляется, возможно, на 5-10 секунд это индекс.js, приложение получает ответ от этого queryUserDoc api.

`

const accountModel = require('./account');
exports.queryUserDoc = functions.https.onCall((data, context) => {
    const uid = context.auth.token.uid;
    return accountModel.getUserDocByUid(uid)
        .then(doc => {
            return JSON.stringify(({'errCode': ERROR_SUCCESS, 'data': doc.data()}));
        })
        .catch(err => {
            return JSON.stringify(({'errCode': err}));
        });
});

` счет.js находится ниже:

function getUserDocByUid(uid) {
    return db.collection(DB_COLLECTION_USER).doc(uid).get();
}

Когда мое приложение вызывало этот api, я находил его так медленно.консоль находится ниже Введите описание изображения здесь

1 2

1 ответ:

Что сработало для меня и значительно увеличило скорость работы функций firebase, так это обновление местоположения моих функций. Я нахожусь в Европе, поэтому по умолчанию изначально было установлено значение us-central1 . После обновления до europe-west1 скорость пошла от ~5 секунд до ~600 мс. относительно легко изменить область, как описано здесь https://firebase.google.com/docs/functions/locations Я просто последовал их примеру и был готов идти