AWS Lambda работает один раз, затем не работает десяток раз - PullRequest
0 голосов
/ 11 января 2019

AWS Lambda завершается успешно один раз, а затем - несколько раз

У меня есть функция AWS Lambda, которая запрашивает базу данных MongoDB (Sandbox - db, размещенную в mlab), используя mongoose с phoneNumber, и база данных возвращает информацию об этом пользователе.

Время от времени код выполняется правильно, Customer.findOne() вызывается и возвращает данные с использованием callback(), но затем несколько раз подряд после этого код внутри Customer.findOne() не вызывается, и в течение нескольких миллисекунд возвращает ноль Всякий раз, когда я тестирую этот код локально, все работает как положено, я всегда получаю ответ из базы данных.

Клиент - это модель мангуста, а мангуста - просто соединение mongodb. Я должен был поставить mongoose.connection.close(), потому что без него это было бы тайм-аут.

const { mongoose } = require('./mongoose');
const { Customer } = require('./customer');

exports.handler = function (event, context, callback) {
    var phoneNumber = '+12345678901';
    Customer.findOne({ phoneNumber }).then((c) => {
        if (!c) {
            mongoose.connection.close();
            return callback(null, { "error": "not found" });
        }
        mongoose.connection.close();
        callback(null, { "Name": c.Name });
    });
};

Я ожидаю, что лямбда-функция будет работать каждый раз, но она будет успешна только один раз в пару десятков раз

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...