25 lines
517 B
TypeScript
25 lines
517 B
TypeScript
import { drizzle } from 'drizzle-orm/neon-serverless';
|
|
import { Pool, neonConfig } from '@neondatabase/serverless';
|
|
import ws from 'ws';
|
|
|
|
neonConfig.webSocketConstructor = ws;
|
|
|
|
const pool = new Pool({
|
|
connectionString: process.env.DATABASE_URL!,
|
|
max: 10,
|
|
idleTimeoutMillis: 30000,
|
|
connectionTimeoutMillis: 5000,
|
|
});
|
|
|
|
export const db = drizzle(pool);
|
|
|
|
process.on('SIGTERM', async () => {
|
|
await pool.end();
|
|
process.exit(0);
|
|
});
|
|
|
|
process.on('SIGINT', async () => {
|
|
await pool.end();
|
|
process.exit(0);
|
|
});
|