connect() mit SqlAlchemy dauert sehr lange

Installation und Anwendung von Datenbankschnittstellen wie SQLite, PostgreSQL, MariaDB/MySQL, der DB-API 2.0 und sonstigen Datenbanksystemen.
Antworten
Hase
User
Beiträge: 104
Registriert: Donnerstag 1. Oktober 2009, 15:17
Wohnort: Bremer Speckgürtel

Hallo,
ich habe ein Flask/SqlAlchemy-Projekt. Die zugehörige Datenbank läuft in einer Session.
Nun muss ich im Verlauf auch eine andere Datenbank auf einem anderen Server abfragen. Ich wollte hier keine lang laufende Session machen, sondern eben nur eine kurze Abfrage.

Code: Alles auswählen

 touch2 = sqlalchemy.create_engine('mysql+pymysql://user:geheim@192.168.12.211:3306/projekte?charset=utf8')
   touch2con = touch2.connect()
   
Das funktioniert auch, aber leider dauert das connect() etwa 10-11 Sekunden! Somit ist ein vernünftiger Arbeitsfluss nicht möglich.

Frage: ist das immer so? Muss das so sein? Liegt das am Betriebssystem (das Hauptprogramm läuft auf Debian, der abgefragte Server mit Lubuntu) ? Liegt das an SqlAlchemy? Es kommt ja keine Fehlermeldung, es dauert halt nur unheimlich lang.

Grüße

Ingo H.

P.S.: Ich könnte .connect() auch beim Programmstart machen. Das Programm läuft aber 24/7 und ich habe Bedenken, dass die connection verloren geht, vielleicht durch ein timeout, und damit ist das Programm nicht mehr funktionsfähig. Das übersehe ich zur Zeit nicht.
Benutzeravatar
__blackjack__
User
Beiträge: 14005
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Hase: Das sollte nicht so lange dauern.
“The best book on programming for the layman is »Alice in Wonderland«; but that's because it's the best book on anything for the layman.” — Alan J. Perlis
Antworten