ClearDB 데이터베이스를 사용하여 heroku에 nodejs 앱을 배포했습니다. 그러나 연결이 1분 동안 비활성 상태로 유지되면 서버가 연결을 닫고 앱이 충돌하는 경우가 있습니다. 다음은 내 로그입니다.
2019-07-02T06:21:42.052527+00:00 heroku[web.1]: 시작 상태에서 최대 상태로 변경됨 2019-07-02T06:22:39.971546+00:00 app[web.1]: events.js: 183 2019-07-02T06:22:39.971591+00:00 app[web.1]: 던지기; // 처리되지 않은 '오류' 이벤트 2019-07-02T06:22:39.971598+00:00 app[web.1]: 오류: 연결 끊김: 서버가 연결을 종료했습니다. 2019-07-02T06:22:39.971601+00:00 app[web.1]: Protocol.end (/app/node_modules/mysql/lib/protocol/Protocol.js:112:13)
2019-07-02T06:22:39.971603+00:00 app[web.1]: 소켓. (/app/node_modules/mysql/lib/Connection.js:97:28)
2019-07-02T06:22:39.971605+00:00 app[web.1]: 소켓. (/app/node_modules/mysql/lib/Connection.js:525:10)
2019-07-02T06:22:39.971607+00:00 app[web.1]: atemitNone (events.js:111:20) 2019-07-02T06:22:39.971610+00:00 app[web.1] : Socket.emit (events.js:208:7) 2019-07-02T06:22:39.971612+00:00 app[web.1]: endReadableNT (_stream_readable.js:1064:12)
2019-07-02T06:22:39.971614+00:00 app[web.1]: at _combinedTickCallback (internal/process/next_tick.js:138:11 2019-07-02T06:22:39.971615+00:00 app[web .1]: process._tickCallback (internal/process/next_tick.js:180:9)
2019-07-02T06:22:40.059465+00:00 heroku[web.1]: 상태가 최대에서 충돌로 변경됨
2019-07-02T06:22:40.059465+00:00 heroku[web.1]: 상태가 최대에서 충돌로 변경되었습니다. 2019-07-02T06:22:40.036310+00:00 heroku[web.1]: 프로세스가 상태로 종료되었습니다. 1
답변1
나는 아주 오랫동안 같은 오류를 겪었습니다.
나는 교체했다
var connection = mysql.createConnection({
// my configuration
})
~와 함께
var conn = mysql.createPool({
// my configuration
})
그리고 코드를 제거했습니다 var conn = connection.connect()
.
그것은 매력처럼 작동했습니다!