문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 다음 판 | 이전 판 | ||
|
java:database:bonecp [2013/01/04 12:13] kwon37xi 새로 만듦 |
java:database:bonecp [2015/09/30 09:57] (현재) kwon37xi |
||
|---|---|---|---|
| 줄 1: | 줄 1: | ||
| ====== BoneCP ====== | ====== BoneCP ====== | ||
| + | * **Deprecated** 개발자가 HikariCP를 추천하고 있음. | ||
| + | * http:// | ||
| * Multi Core CPU 지원, JDBC Connection Pool | * Multi Core CPU 지원, JDBC Connection Pool | ||
| 줄 6: | 줄 8: | ||
| <code xml> | <code xml> | ||
| <bean class=" | <bean class=" | ||
| - | < | + | < |
| - | < | + | < |
| - | < | + | < |
| - | < | + | < |
| - | < | + | < |
| < | < | ||
| - | < | + | < |
| - | < | + | < |
| < | < | ||
| < | < | ||
| 줄 22: | 줄 24: | ||
| </ | </ | ||
| </ | </ | ||
| + | * '' | ||
| + | ===== JMX MBean ===== | ||
| + | * 기본적으로 JMX MBean을 생성해준다. | ||
| + | * 해당 MBean의 이름은 '' | ||
| + | * '' | ||
| + | ===== 0.8.RELEASE bug ===== | ||
| + | < | ||
| + | WARN ConnectionPartition.finalizeReferent - BoneCP detected an unclosed connection (in pool 'pool name') and | ||
| + | will now attempt to close it for you. You should be closing this connection in your application - enable | ||
| + | connectionWatch for additional debugging assistance or set disableConnectionTracking to true to disable | ||
| + | this feature entirely. | ||
| + | |||
| + | # 위 WARNING이 발생하면서 MySQL 사용시에 다음과 같은 오류가 연쇄 발생 | ||
| + | .... | ||
| + | Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: | ||
| + | No operations allowed after connection closed. | ||
| + | </ | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | '' | ||
| + | < | ||
| + | // Spring 등을 통해 connection release가 100% 보장되는 경우 다음처럼 커넥션 트랙킹을 disable. | ||
| + | boneCpDataSource.setDisableConnectionTracking(true); | ||
| + | |||
| + | // 다른곳에서의 해결책 : https:// | ||
| + | boneCpDataSource.setStatisticsEnabled(true); | ||
| + | boneCpDataSource.setReleaseHelperThreads(2); | ||
| + | </ | ||
| + | |||
| + | ===== Connection 끊김 문제 ===== | ||
| + | * 아래와 같은 에러가 발생한다.< | ||
| + | Database access problem. Killing off this connection and all remaining connections in the connection pool. SQL State = 08007 | ||
| + | Communications link failure during rollback(). Transaction resolution unknown. | ||
| + | </ | ||
| + | * 실제 DB 접속이 끊겨서 발생하는 오류인 듯 함. ping 쿼리 주기와 실제 ping이 날라가는지 확인 해 볼 것. 또한 ping을 날린다 하더라도 DB설정이나 네트워크 라우터 등에서 끊을 가능성도 배제할 수 없슴. | ||