Context
Я запускаю postgres db для самого маленького экземпляра Cloud SQL n1-standard-1 (1 ЦП, ОЗУ 3,75 ГБ, хранилище SSD 10 ГБ). Я получаю к нему доступ через приложение фляги, работающее на App Engine, используя sqlalchemy. У меня только 20 пользователей на моей платформе с очень редким использованием БД (~ 100 запросов в день).
Задача
Sqlalchemy создает пул соединений для более производительных запросов. Это означает, что соединения, которые мое приложение устанавливает с моей базой данных, являются постоянными, даже если колба не работает. Пока соединение установлено, экземпляр Cloud SQL остается в рабочем состоянии. Поэтому я плачу за бесполезное время безотказной работы. Экземпляр Cloud SQL в настоящее время стоит мне 60 долларов в месяц. Я хотел бы уменьшить это.
Попытки решения
Я начал искать способы закрыть все соединения через sqlalchemy. Единственное решение, которое я нашел, - отключить пул соединений в моем приложении фляги. Это предотвратит сохранение соединений. Я опасаюсь, что этот подход не будет использоваться (я использую Flask-SQLAlchemy, для которого не выставлена базовая опция sqla poolclass ( link ). Поэтому я опасаюсь применять ее в работе .
Спасибо за вашу помощь.