tutorial from create_engine python session timeout sqlalchemy

python - from - Sql Alchemy connection time Fuera



sqlalchemy sql server (2)

Estoy usando sqlalchemy con MySQL , y ejecutando consulta con expresión sql. Al ejecutar una serie de consultas, se agota el tiempo de espera. Encontré una answer pero no está claro para mí. Por favor, cualquiera puede ayudarme?

TimeoutError: se alcanzó el límite de QueuePool del desbordamiento de tamaño 5, se agotó el tiempo de espera de la conexión, se agotó el tiempo de espera 30


Cada vez que cree una nueva sesión en su código, asegúrese de cerrarla. Simplemente llame a session.close()

Cuando recibí este error, pensé que estaba cerrando todas mis sesiones, pero miré con atención y había un nuevo método donde no estaba. Cerrar la sesión en ese método solucionó este error por mí.


En el modo multi-hilo, si su número de solicitud simultánea es mucho más que el tamaño del grupo de conexiones db, arrojará el límite del conjunto de colas del error desbordamiento 10 de tamaño 5 alcanzado. prueba con esto:

engine = create_engine(''mysql://'', convert_unicode=True, pool_size=20, max_overflow=100) to add the pool size

Agregar: el método anterior no es una forma correcta. La razón real es que el grupo de conexiones de db está agotado y no hay otra conexión disponible. La situación más probable es que falte para liberar la conexión. Por ejemplo:

@app.teardown_appcontext def shutdown_session(exception=None): db_session.remove()