A.42. 검증 타이밍 방법 비교

validate-on-matchbackground-validation 방법의 다양한 측면을 비교하여 데이터베이스 연결 유효성 검사를 구성하는 데 적합한 방법을 확인할 수 있습니다.

다음 표에는 유효성 검사 타이밍 방법에 대한 비교 매트릭스가 포함되어 있습니다.

표 A.144. 유효성 검사 타이밍 방법에 대한 비교 매트릭스

비교 측면

validate-on-match 방법

background-validation 방법

신뢰성

validate-on-match 방법은 각 데이터베이스 연결을 사용하기 직전에 검증합니다. 즉 애플리케이션에서 사용하기 위해 풀에서 확인되지 않은 연결을 테스트하기 위해 유효성 검사가 수행됩니다.

백그라운드-validation 방법은 주기적인 백그라운드 검증과 검증된 연결 사용 시간 간에 연결이 실패할 수 있기 때문에 신뢰할 수 있습니다.

백그라운드 검증 방법이 자주 실행되는 경우 유효성 검사는 애플리케이션에서 사용하기 위해 예약하지 않는 풀의 해당 연결에 대해서만 수행됩니다. 또한 풀에서 확인되지 않은 연결을 테스트하는 데 유효성 검사가 수행되지 않음을 의미합니다.

성능: 시스템 사용, 네트워크 성능, 연결 문제의 타이밍 및 범위에 따라

장기간 동안 유휴 상태로 유지되는 시스템 사용자는 validate-on-match 를 사용하여 연결을 요청할 때 짧은 지연 또는 더 오래 볼 수 있습니다.

JDBC 4 검증 메커니즘과 같이 보다 효율적인 검증 메커니즘을 사용하는 시스템 사용자는 validate-on-match 를 사용할 때 지연이 줄어들 수 있습니다. 이는 시스템이 거의 유휴 상태가 아니며 연결이 시간 초과되지 않을 가능성이 낮은 경우 true입니다.

풀의 대부분의 연결 또는 전체에 영향을 미치는 광범위한 중단 이후 validate-on-match 로 구성된 데이터 소스 사용자는 연결 가져오기에 지연될 가능성이 높습니다. 이는 손상된 연결이 사용자가 연결을 기다릴 때 반복적으로 검증되고 제거되기 때문입니다.

긴 기간 동안 유휴 상태로 유지되는 시스템의 사용자는 background-validation 를 사용하여 연결을 요청할 때 짧은 지연 또는 더 오래 볼 수 있습니다.

JDBC 4 검증 메커니즘과 같이 보다 효율적인 유효성 검사 메커니즘이 있는 시스템 사용자는 background-validation 를 사용할 때 지연을 줄일 수 있습니다. 이는 시스템이 거의 유휴 상태가 아니며 연결이 시간 초과되지 않을 가능성이 낮은 경우 true입니다.

풀의 대부분의 연결 또는 전체에 영향을 미치는 광범위한 중단 이후 background-validation 로 구성된 데이터 소스 사용자는 여러 번 반환하고 다시 시도해야 하는 손상된 연결이 발생할 가능성이 높습니다.

내결함성 코딩

오류가 있는 경우 애플리케이션의 풀에서 연결을 가져온 후에도 연결이 어느 시점에서나 외부로 종료될 수 있기 때문에 validate-on-match 를 사용할 때 애플리케이션 논리가 동일하게 유지됩니다.

validate-on-match 를 사용할 때 손상된 연결이 존재할 수 없습니다. 이는 validate-on-match 가 사용하기 전에 연결의 즉각적인 유효성 검사를 수행하기 때문입니다.

오류가 있을 경우 애플리케이션에서 연결을 가져온 후에도 모든 지점에서 연결이 외부로 종료될 수 있으므로 백그라운드 유효성 검사를 사용할 때 애플리케이션 논리가 동일하게 유지됩니다.

백그라운드 유효성 검사를 사용할 때 손상된 연결이 발생할 가능성이 높습니다.





2024-02-09에 최종 업데이트된 문서