Это может произойти, если вы используете debug=True
в своем приложении, и вы загрузили несколько страниц или конечных точек API, которые были обнулены.
Причина в том, что запуск отладочной версии приложения позволяет отключить отладочный отжиг на странице с ошибкой. Этот живой отладчик поддерживает все ресурсы от обработки запроса, чтобы вы могли их изучить. Это означает, что соединение с базой данных не может быть переработано.
Вы не должны использовать режим отладки для производственной версии вашего приложения (кроме проблем, подобных этому, это риск для безопасности), и отладчик часто не будет работать (он предназначен для работы с тестом на колбу сервер, а не с пушкой). Поэтому в prod решение состоит в отключении отладки.
Если у вас есть эта проблема в dev с использованием режима отладки - это ограничение. Вы не должны так сильно ударять по серверу dev, либо можете увеличить лимит. Имейте в виду, что 15 соединений, как правило, достаточно для обслуживания большого количества одновременных запросов, когда они правильно перерабатываются. Только в отладке они заканчиваются.
Это способ сделать это для SQLAlchemy по умолчанию, но Flask-SQLAlchemy делает это за вас. Это должно быть ** не обязательно, если вы используете Flask-SQLAlchemy. –