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: 106
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: 14246
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Hase: Das sollte nicht so lange dauern.
“All tribal myths are true, for a given value of 'true'.” — Terry Pratchett, The Last Continent
Antworten