Files

25 lines
867 B
Python
Raw Permalink Normal View History

2026-05-21 12:01:10 +07:00
#Connection to Database
from psycopg2.pool import SimpleConnectionPool
import os
from dotenv import load_dotenv
load_dotenv()
db_pool = SimpleConnectionPool(
minconn=1,
maxconn=10,
host=os.getenv("DB_HOST"),
port=os.getenv("DB_PORT"),
database=os.getenv("POSTGRES_DB"),
user=os.getenv("POSTGRES_USER"),
password=os.getenv("POSTGRES_PASSWORD")
)
# Tạo ra 10 conection khác nhau, mỗi lần dùng thì vào đây lấy 1 connection ra => Nó tạo sẵn một nhóm connection. Khi cần thì lấy ra, dùng xong trả lại.
# khác với kiểu cũ là mỗi lần request khác nhau lại phải tạo mới connection nó sẽ bị nặng và lâu hơn
def get_connection():
return db_pool.getconn() # Lấy ra connection trong này
def release_connection(conn):
db_pool.putconn(conn) # trả connection lại pool này