AWS Lamba + Nodejs + MySQL - PullRequest
       3

AWS Lamba + Nodejs + MySQL

0 голосов
/ 27 мая 2019

Я пишу простой лямбда-код, чтобы вставить некоторые значения в таблицу MySQL (RDS), но я понятия не имею, почему он не работает. После повторных попыток иногда это работает, и последующие попытки снова перестают работать

каждый раз, когда происходит сбой (не вставляется в таблицу), я получаю ответ ниже

Response:
null

Request ID:
"6814c4b8-65c5-4401-b7c1-ae06426f186c"

Function Logs:
START RequestId: 6814c4b8-65c5-4401-b7c1-ae06426f186c Version: $LATEST
END RequestId: 6814c4b8-65c5-4401-b7c1-ae06426f186c
REPORT RequestId: 6814c4b8-65c5-4401-b7c1-ae06426f186c  Duration: 317.80 ms Billed Duration: 400 ms     Memory Size: 128 MB Max Memory Used: 75 MB  

Мой код для вставки данных или запроса данных так же прост, как и

const mysql = require('mysql');
const con = mysql.createConnection({
  host     : process.env.RDS_HOSTNAME,
  user     : process.env.RDS_USERNAME,
  password : process.env.RDS_PASSWORD,
  port     : process.env.RDS_PORT,
  database : process.env.RDS_DATABASE
});
exports.handler = (event, context, callback) => {
  // allows for using callbacks as finish/error-handlers
  context.callbackWaitsForEmptyEventLoop = false;
  const sql = "INSERT INTO MESSAGE (message) VALUES ('I am MySQL')";
  con.query(sql, (err, res) => {
    if (err) {
      throw err
    }
    callback(null, '1 records inserted.');
  })
};

Я дважды проверил настройки группы безопасности, и она кажется правильной

Я имел в виду

`` https://medium.com/@hk_it_er/create-lambda-and-api-gateway-nodejs-aws-serverless-to-rds-mysql-6a75243e61cc

``

Есть ли какие-либо указатели на то, что не так или что я должен проверить?

P.S .: Через день после 100 попыток мне удалось вставить 3 строки с одинаковым кодом и настройками.

1 Ответ

0 голосов
/ 28 мая 2019

проблема была с узлом v 10. Я переключился на узел 8, и, похоже, он работает легко.Угадай, узел 10 сделал несколько вызовов асинхронными.

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