데이터베이스의 연결 풀링
2036 단어 webdevdatabasejavascriptnode
일반적인 데이터베이스 연결 방식
풀링을 시작하기 전에 애플리케이션이 데이터베이스 작업을 수행하기 위해 데이터베이스에 연결할 때 어떤 일이 발생하는지 빠르게 검토해 보겠습니다.
보시다시피 연결 및 네트워크 소켓의 열기 및 닫기는 컴퓨팅 리소스가 필요한 여러 단계 프로세스입니다. 그러나 연결을 닫지 않고 항상 열어 두는 것도 리소스를 소비합니다.
데이터베이스 연결을 풀링하는 이유는 무엇입니까?
간단한 응용 프로그램의 경우 데이터베이스를 연결하는 일반적인 방법으로 충분할 수 있습니다.
그러나 애플리케이션이 어느 정도의 사용자를 확보하면 간단한 데이터베이스 작업에 몇 초가 걸릴 수 있습니다.
또한 각 데이터베이스 작업에 대한 지속적인 연결 열기 및 닫기
너무 많은 자원을 소비하게 됩니다.
종종 각 작업에 대해 완전히 새로운 연결을 열고 닫는 것보다 연결을 열린 상태로 유지하고 필요에 따라 작업에서 작업으로 연결을 전달하는 방법을 찾는 것이 합리적입니다.
데이터베이스 연결 풀링이란 무엇입니까?
데이터베이스 연결 풀링은 필요에 따라 데이터베이스 작업에서 데이터베이스 작업으로 전달될 수 있는 열린 연결의 "풀"을 유지함으로써 연결을 열고 닫는 비용을 줄이는 방법입니다.
연결 풀을 만들고 구성하는 방법은 무엇입니까?
예를 들어 **PostgreSQL **과 **sequelize **ORM을 사용하여 시연하겠습니다.
그러나 거의 모든 종류의 데이터베이스 또는 ORM은 연결 풀링을 지원합니다.
아래 코드 스니펫에는 몇 가지 기본값이 포함되어 있습니다.
pool: {
max: 5,
min: 0,
acquire: 30000,
idle: 10000,
}
max->
클라이언트 풀의 최대 수는 동시에 확장할 수 있습니다. min ->
클라이언트 풀의 최소 수는 확장할 수 있습니다.동시에.
acquire ->
풀이 오류를 발생시키기 전에 연결을 시도하는 최대 시간(밀리초)입니다. idle ->
연결이 해제되기 전에 데이터베이스 작업을 대기하거나 대기할 수 있는 최대 시간(밀리초)입니다. 빠르게 시작하는 데 필요한 최소 구성입니다.
항상 뒤를 돌아보고 요구 사항에 따라 더 많은 구성을 추가합니다.
읽어 주셔서 감사합니다.
의견 섹션에서 의견을 자유롭게 공유하십시오.
이와 같은 더 많은 콘텐츠를 보려면 나를 따르십시오.
Reference
이 문제에 관하여(데이터베이스의 연결 풀링), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/leonel_7/connection-pooling-in-database-13n5텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)