подключение к БД, в конце делаю close().
Растет потребление памяти.
for {
...
dbpool, err := pgxpool.New(ctx, databaseUrl)
...
dbpool.Close()
}
Постоянным держать коннект к БД я не хочу.
Как исправить ситуацию с потреблением памяти?
А точно надо каждый раз пул создавать, а не получать из одного коннекты?
Ну я делал вне цикла, так-то норм, но я не хочу занимать соединение в БД при бездействии
// If set to true, pool doesn't do any I/O operation on initialization. // And connects to the server only when the pool starts to be used. // The default is false. LazyConnect bool
Ну так понастраивайте пул, чтобы idle был поменьше
config.MaxConnIdleTime = time.Second Idle в диспетчере сессий БД висит до прихода следующего запроса ☹️
тело цикла вынеси в функцию отдельную, так должен начать отрабатывать gc и освобождать dbpool
Попробую, спасибо.
Обсуждают сегодня