Мои облачные функции Firebase выдают ошибку SequelizeConnectionError: connect ETIMEDOUT всякий раз, когда я запрашиваю мою базу данных MySql

0

Описание проблемы:

Я использую Sequalize ORM и мои облачные функции Firebase, предоставляя SequelizeConnectionError: подключайте ошибку ETIMEDOUT всякий раз, когда я запрашиваю мою базу данных MySql. Он отлично работает, когда функции работают на localhost через Firebase cli. Ниже приведен метод соединения Sequalize.

Фрагмент кода

var sequelize = new Sequelize('dbname, 'username', 'password', {
host: "host",
dialect: 'mysql',
define: {
    paranoid: true
},
pool: {
    max: 5,
    min: 0,
    acquire: 30000,
    idle: 1
},
operatorsAliases: false})

Вышеупомянутый код работает идеально, когда функции выполняются через Firebase CLI Локально на порту 5000. Когда я развертываю его на Firebase и запускаю те же функции, я получаю ниже ошибок.

2018-06-23T11:31:53.887Z E app: Unhandled rejection
2018-06-23T11:31:55.187Z E app: SequelizeConnectionError: connect ETIMEDOUT
    at Utils.Promise.tap.then.catch.err (/user_code/node_modules/sequelize/lib/dialects/mysql/connection-manager.js:149:19)
    at tryCatcher (/user_code/node_modules/sequelize/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/user_code/node_modules/sequelize/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/user_code/node_modules/sequelize/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromise0 (/user_code/node_modules/sequelize/node_modules/bluebird/js/release/promise.js:614:10)
    at Promise._settlePromises (/user_code/node_modules/sequelize/node_modules/bluebird/js/release/promise.js:689:18)
    at Async._drainQueue (/user_code/node_modules/sequelize/node_modules/bluebird/js/release/async.js:133:16)
    at Async._drainQueues (/user_code/node_modules/sequelize/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/user_code/node_modules/sequelize/node_modules/bluebird/js/release/async.js:17:14
)
Теги:
firebase
sequelize.js
google-cloud-functions

2 ответа

0

Вам может быть разрешен пул максимального размера 1.

  • 0
    Другие функции Firebase работают нормально, и это мое первое приложение на Firebase, поэтому у меня сейчас нет никаких ограничений.
0

Это, скорее всего, потому, что ваш проект Firebase находится в бесплатном плане платежей Spark. С помощью Spark ваши облачные функции не могут выполнять исходящие подключения к службам, которые не полностью контролируются Google. Чтобы выполнить исходящие подключения, вам необходимо обновить свой проект до одного из планов платежей, таких как Blaze.

Подробнее читайте на странице цены Firebase.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню