포트폴리오로 사용중인 사이트에 들어갔는데 일부 기능이 405 에러가 나면서 제대로 동작하지않았습니다.
로그파일을 확인해보니
Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl@23323911 (No operations allowed after connection closed.). Possibly consider using a shorter maxLifetime value.
DB 에 연결되는 시간이후에는 연결이 끊어집니다.
mysql 의 커넥션 연결 기본값은 8시간
jdbc 연결에 ?autoReconnect=true 을 붙입니다.
커넥션이 연결이 끊어졌을때 재연결을 하기위함입니다.
추가로
스프링부트 1버전일 경우 application.properties 설정파일에
아래와 같이 쿼리하기전에 유효한지 테스트쿼리를 보내면 됩니다.
DBCP마다 다르지만 dbcp2는 아래와 같습니다.
spring.datasource.dbcp2.test-on-borrow=true
spring.datasource.dbcp2.validation-query=select 1
스프링부트 2버전부터는 히카리DBCP로 변경되었습니다.
히카리 DBCP는 validation-query=select 1 유효쿼리날리는것을 생략하기때문에 설정이 필요없습니다.
반응형
'서버, 네트워크' 카테고리의 다른 글
지구온난화와 프로그램 (0) | 2022.01.11 |
---|---|
파이어폭스 78 TLS 1.0/1.1 지원중단 (0) | 2020.07.06 |
모질라 파이어 폭스의 TLS1.0/1.1 지원 재개 (0) | 2020.04.11 |
Nginx 외부에서 서버 이미지링크 참조방지 (핫링크 방지) (0) | 2020.02.24 |
nginx 설정 - 정적 파일 (0) | 2020.02.20 |