문제

속도를 손상시키지 않고 HSQLDB에서 연결 풀링을 구현하는 가장 좋은 방법은 무엇입니까?

도움이 되었습니까?

해결책

최대 절전 모드는 데이터 소스에서 연결을 받고 사용하여 닫습니다. 연결 풀이 필요하거나 사용하는 데이터베이스 서버에 관계없이 앱과 DBM에 많은 리소스를 소비하여 매우 비효율적입니다.

Apache-Jakarta의 Commons-DBCP를 사용해보아야합니다. 매우 효율적이고 설정하기가 간단합니다. 커먼즈 풀에 달려 있습니다. DBCP로 BasicDatasource를 정의하면 사용하라고 지시하는 JDBC 드라이버의 연결을 관리합니다. 연결 검증 및 기타 많은 것들이 있습니다. 웹 앱을 작성하는 경우 컨테이너의 연결 풀을 구성하고 사용할 수있는 풀을 정의하는 대신 사용합니다.

다른 팁

사과와 오렌지를 비교하고 있습니다.

  1. ORM을 원한다면 다른 ORM 도구의 성능을 동일한 DB와 비교하십시오.
  2. 연결 풀링을 원한다면 다른 연결 풀링 라이브러리를 동일한 DB와 비교하십시오.

ORM을 수행하면 추가 노력이 발생하므로 직접 JDBC 액세스만큼 빠르지 않습니다. 즉, 최대 절전 모드는이 추가 오버 헤드를 최소화하기 위해 많은 길이 (그리고 매우 성공적)로갑니다. ORM을 사용하면 상대적으로 작은 성능 감소에 대한 개발 생산성이 크게 증가하고 있습니다.

연결 풀링은 ORM에 대한 직교 문제입니다. 가장 분명히 Hibernate를 사용하면 자신의 연결 풀링 인프라를 선택할 수 있습니다.

또한 실제로 연결 풀링과 트랜잭션 MGMT 사이에 상당히 타이트한 커플 링이 있습니다. 예를 들어, 일반적인 J2EE 애플리케이션은 연결 풀링을 컨테이너 (JDBC DataSource API를 통해)로 남겨두고 선언 트랜잭션에 의존합니다. 이 경우 연결 및 트랜잭션은 (대략) 함께 관리됩니다.

J2EE 컨테이너에없고 ORM이 필요하지 않은 경우 C3P0, Commons-Pool 등을 비교합니다.

Hibernate의 자체 연결 풀러를 사용한 경우 사용을 고려할 수 있습니다. C3P0? (이미 C3P0을 사용하고 있다면 더 이상 도움이되지 않습니다) HSQLDB를 직접 사용하지는 않았지만 시도해 볼 가치가 있다고 생각합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top