22 lines
531 B
Python
22 lines
531 B
Python
from sqlalchemy.ext.asyncio import AsyncSession, create_async_engine
|
|
from sqlalchemy.orm import sessionmaker, declarative_base
|
|
from app.settings import settings
|
|
|
|
Base = declarative_base()
|
|
|
|
from sqlalchemy.pool import QueuePool
|
|
|
|
# Create async engine with connection pooling
|
|
engine = create_async_engine(
|
|
settings.DATABASE_URL,
|
|
echo=True,
|
|
poolclass=QueuePool,
|
|
pool_size=5,
|
|
max_overflow=10,
|
|
)
|
|
|
|
# Create async session factory
|
|
async_session = sessionmaker(
|
|
engine, class_=AsyncSession, expire_on_commit=False
|
|
)
|