Connection Pooling

Problem

Every API request needs the database. Creating and authenticating a brand-new database connection each time is expensive.

Solution — Connection Pool

Keep reusable connections.
Request → borrow connection
        → query
        → return connection
Future requests reuse them.
Core idea: connection pooling amortizes the cost of establishing database connections.