연결 풀링이란 무엇입니까?
연결 풀링은 데이터베이스를 쿼리하는 사용자의 연결을 관리하는 용어입니다. 많은 사용자가이를 알지 못할 수도 있지만, 데이터베이스가 상주하는 응용 프로그램 서버에 대한 액세스를 원하는 많은 사용자가있을 때 서버가 모든 연결에 대해 양호한 연결을 유지하는 것은 거의 불가능합니다. 이 시간. 연결 풀링을 가능하게하는 소프트웨어 엔지니어링을 통해 서버는 많은 양의 연결을 생성하는 쿼리에 관계없이 연결을 잘 관리 할 수 있으며 초 단위의 속도로 이러한 쿼리에 응답 할 수 있습니다.
연결은 연결 풀에 포함되도록 구성이 동일해야하므로 대부분의 서버 연결 풀링 프로그램에는 서로 다른 연결 풀이 동시에 실행됩니다. 공간을 사용할 수있는 경우 사용자가 연결을 시도 할 때 유사한 구성을 가진 풀에 할당됩니다. 사용 가능한 공간이 없으면 요청이있는 즉시 할당되도록 대기합니다. 사용자는 자신이 대기열에 있다는 것을 알지 못하지만 데이터베이스가 쿼리 응답 속도가 느리다는 것을 알 수 있습니다. 그러나 데이터베이스 관리 시스템의 백 오피스에는 풀을 스캔하여 사용자가 열린 연결을 찾을 수있는 공간을 찾습니다. 대부분의 연결 풀링 프로그램에는 풀당 최대 사용자 세트 목록과 연결이 끊어지고 가용성이 풀로 리턴되기 전에 연결이 비활성 상태로 유지 될 수있는 최소 시간 설정이 있습니다.
연결 풀 작성시 특정 수의 연결 오브젝트가 작성되어 풀에 추가됩니다. 풀이 활성화 된 것으로 간주 되려면 최소 개수의 객체가 필요합니다. 이러한 연결 개체는 풀에 대한 연결을 본딩하는 가용성 시트이며 풀 내에서 허용되는 최대 값까지 풀에 생성 및 추가 될 수 있습니다. 사용자가 쿼리에 만족하고 연결 개체를 제거하면 연결 풀링 프로그램에서 다른 사용자 나 같은 사용자가 다시 사용할 수 있도록 개체를 풀로 반환합니다.
연결 풀링에서 응답 시간이 느려지는 한 가지 요소는 풀 조각화입니다. 풀 조각화는 일반적으로 통합 보안 또는 기존 서버 집합에있는 데이터베이스가 너무 많아서 발생합니다. 사용자를 인증 한 다음이를 기존 연결 풀 객체에 큐잉하거나 할당하는 데이터베이스 관리 시스템은 메모리를 소모하며 액세스를위한보다 엄격한 시스템 설계는 종종 너무 많은 데이터베이스 문제를 해결합니다. 많은 연결 풀링 프로그램에서 Windows 기반 프로그램의 통합 보안 시스템 설계를 위해서는 한 번에 한 명의 Windows 기반 사용자 만 풀 내에 상주해야합니다. 이는 동시에 응답해야하는 추가 요청을 수용하기 위해 더 많은 풀을 작성하여 정리할 수 있습니다.
연결 풀링 프로그램이 사용자가 일정 시간 이상 유휴 상태이거나 연결이 끊어진 것을 감지하면 연결 개체를 풀에 잘못된 개체로 반환합니다. 연결이 유효한 상태에서 서버가 다운되면 연결 풀에서 끊어진 연결을 인식하지 않아도 연결을 계속 철회 할 수 있습니다. ActiveX 연결 풀 프로그램은 일반적으로 서버가 다시 시작될 때 이러한 연결 풀을 삭제합니다.