簡體   English   中英

在Amazon Ec2服務器上丟失數據庫連接

[英]Losing Database Connection on Amazon Ec2 Server

在過去幾個月中,我一直面臨一個問題,我將應用程序部署在Amazon ec2服務器上,但每天至少發生10到30次錯誤。

1) Error: connect ETIMEDOUT
    at errnoException (net.js:904:11)
    at Object.afterConnect [as oncomplete] (net.js:895:19)

2) Error: getaddrinfo ENOTFOUND
     at errnoException (dns.js:37:11)
     at Object.onanswer [as oncomplete] (dns.js:124:16)
     --------------------
    at Handshake.Sequence                                            (/var/app/current/node_modules/mysql/lib/protocol/sequences/Sequence.js:15:20)
at new Handshake (/var/app/current/node_modules/mysql/lib/protocol/sequences/Handshake.js:9:12)
at Protocol.handshake (/var/app/current/node_modules/mysql/lib/protocol/Protocol.js:42:50)
at Connection.connect (/var/app/current/node_modules/mysql/lib/Connection.js:72:18)
at module.exports.connect (/var/app/current/node_modules/sequelize/lib/dialects/mysql/connector-manager.js:276:16)
at Object.pool.Pooling.Pool.create (/var/app/current/node_modules/sequelize/lib/dialects/mysql/connector-manager.js:125:19)
at createResource (/var/app/current/node_modules/sequelize/node_modules/generic-pool/lib/generic-pool.js:258:13)
at dispense (/var/app/current/node_modules/sequelize/node_modules/generic-pool/lib/generic-pool.js:250:9)
at Object.me.acquire (/var/app/current/node_modules/sequelize/node_modules/generic-pool/lib/generic-pool.js:316:5)
at module.exports.enqueue (/var/app/current/node_modules/sequelize/lib/dialects/mysql/connector-manager.js:320:19)

3) TypeError: Uncaught, unspecified "error" event.
at TypeError (<anonymous>)
at EventEmitter.emit (events.js:74:15)
at Handshake._callback (/var/app/current/node_modules/sequelize/lib/dialects/mysql/connector-manager.js:286:19)
at Handshake.Sequence.end (/var/app/current/node_modules/mysql/lib/protocol/sequences/Sequence.js:75:24)
at Protocol.handleNetworkError (/var/app/current/node_modules/mysql/lib/protocol/Protocol.js:238:14)
at Connection._handleNetworkError (/var/app/current/node_modules/mysql/lib/Connection.js:155:18)
at Socket.EventEmitter.emit (events.js:117:20)
at net.js:830:16
at process._tickDomainCallback (node.js:459:13)

任何想法如何解決這些問題?

在這里發布之前,我也在github上發布了類似的問題,但我得到的回答不是令人滿意,這是一個亞馬遜問題,許多人都在面對它。

那么,對此有什么建議或解決方案嗎?

您的錯誤編號2是我幾天前遇到的問題,我通過clouddueling找到了一個解決方案,在這里https://github.com/aws/aws-sdk-js/issues/55

如果您沒有遇到亞馬遜問題,希望對您有所幫助。

實際上,這可能是DNS問題,具體取決於您的設置。 根據您的問題,我假設MySQL數據庫與您的應用程序安裝在同一主機上,如果未安裝,則將應用相同的解決方案。

編輯您的主機文件,並對您的MySQL主機名和IP地址進行硬編碼,然后檢查是否可以解決您的問題。 如果是這樣,則需要檢查名稱服務器(使用Google的8.8.8.8和8.8.4.4),並確保已正確設置DNS。

切勿對任何內容進行硬編碼,如果實際上是DNS的原因,請僅使用此方法來推斷。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM