Hi,
ich habe hier eine Delphi-Anwendung die per
odbc auf einen
MySQL Server zugreift. Die Umstellung auf MyDAC ist schon erfolgt, selbes Problem.
Die Anwendung liest im Grunde ne handvoll Tabellen aus, verarbeitet die Daten und schreibt wieder was zurück. Laufzeit je nach Umfang der Datenbank zwischen 1 und 120 Minuten.
problem: Bei mir auf dem System braucht die Anwendung rund das 4-5 fache an Zeit als beim Kunden (also erst mal kein dringendes Problem - nervt aber beim Debuggen) - und ich habe keinen blassen Schimmer was ich falsche mache / falsch konfiguriert habe.
Die Zeit geht bei mir insbesondere beim Auslesen von Daten drauf (fetch). Ich vermute, dass ich hier einen Fehler in der Konfiguration des Servers oder der Verbindung habe.
Der Server ist virtualisiert auf einem ESXi 5.5, CPU ist ein Xeon 3, 18 GByte
RAM, für den
MySQL Server sind 8 GByte eingestellt, das Image liegt auf einer SSD.
OS ist CentOS 6.5 (vorher Ubuntu)
MySQL Version 5.1.71 (ist gesetzt, d.h. nicht änderbar). Zur Vollständigkeit: der Speicher reicht für die Verarbeitung aus, es werden max. 4Gbyte verwendet, definitiv nichts geswapt.
Der Client läuft ebenfalls auf dem ESXi, kann aber auch auf einem anderen Rechner liegen. Ich habe als
OS ein XP oder auch ein Win 7 - in beiden kann ich keinen Unterschied fest stellen.
Die Netzwerkverbindung zwischen dem Client und dem Server habe ich mit iperf gemessen und habe bei mir in verschiedenen Konfigurationen (z.B. wenn ich
MYSQL-Server und Client auf meinem AMD A10-5800 laufen lasse) sehr unterschiedliche Geschwindigkeiten raus bekommen, auf dem ESX liegen die rund 3x über denen des AMD - aber auch das hat keinen Einfluss auf die Geschwindigkeit.
Hat irgend jemand ne Idee was ich testen/ändern könnte um dem Zeitfresser auf die Spur zu kommen?