연결 풀(connection pool)은 연결의 효율적인 재사용을 위해 메모리에서 장기간 실행되는 연결을 유지하고, 애플리케이션이 동시에 사용할 수 있는 총 연결 수에 대한 관리를 제공하는 데 사용되는 표준 기술입니다. 특히 백엔드 웹 애플리케이션의 경우 연결 풀은 요청 전반에 걸쳐 재사용되는 활성 데이터베이스 연결의 "풀"을 메모리에 유지하는 표준 방법입니다 [1].
그 연결 풀의 사이즈를 pool_size로 설정할 수 있고, 최대 초과 개수를 max_overflow로 설정할 수 있습니다. 따라서, pool_size + max_overflow 개수만큼의 연결 개수가 생성 가능하고, 그 수를 넘는 경우에는 기다리게 합니다.
참고자료
[1] https://docs.sqlalchemy.org/en/20/core/pooling.html
[2] https://spoqa.github.io/2018/01/17/connection-pool-of-sqlalchemy.html
'Dev > python' 카테고리의 다른 글
[python] redis.Redis()와 redis.StrictRedis()의 차이는? (0) | 2023.09.26 |
---|---|
[pandas] 데이터프레임에서 NaN을 None으로 치환하기, replace(), np.nan 활용 (0) | 2023.09.24 |
[sqlalchemy] one(), one_or_none(), first() 메서드 차이 비교 (0) | 2023.09.23 |
[FastAPI] uvicorn의 workers 설정 의미 (0) | 2023.09.08 |
[pandas] 데이터프레임 딕셔너리로 변환하기, df.to_dict('records') (0) | 2023.09.07 |
[python] 딕셔너리 키-값 쌍 삭제하기, pop() 메서드 (0) | 2023.09.04 |
[python] 아스키 코드를 문자로 변환하기, chr() 함수 (0) | 2023.09.01 |
[python] 문자를 아스키 코드로 변환하기, ord() 함수 (0) | 2023.08.31 |