Langsamer MySQL-Zugriff von Windows-Clients auf virtuellem Server

Langsamer MySQL-Zugriff von Windows-Clients auf virtuellem Server

Ich habe auf drei Kassencomputern in einem Pub, in dem ich früher gearbeitet habe, eine Installation des Open Source-POS-Systems UniCenta.

Die Clients werden auf einen virtuellen Server mit CentOS 6 und MySQL 5.6.39 und phpMyAdmin zur Verwaltung weitergeleitet.

Die Anwendung ist in Java geschrieben und läuft unter MySQL

Vor ein paar Monaten lief die Installation immer langsamer und es dauerte mehrere Sekunden, bis die Schaltflächen auf dem Bildschirm reagierten. In einem belebten Pub ist das ein ernstes Problem.

Ich habe versucht, die Einstellungen in my.cnf auf dem Server zu ändern, um die Leistung des MySQL-Servers zu optimieren, da ich zunächst dachte, dass dies das Problem sei, aber das hat keinen Unterschied gemacht.

Ich habe auf die neueste Version der UniCenta-Software aktualisiert, um zu sehen, ob das Problem dadurch behoben wird, aber weiterhin ohne Erfolg.

Ich dachte, ich würde den Client von meinem Mac mit OS-X El Capitan ausprobieren, und er funktioniert perfekt ohne jegliche Verlangsamung.

Ich habe versucht, unterschiedliche Java-Versionen auf den Client-Computern zu installieren, aber das hatte keinen Effekt.

Ich habe „skip_name_resolve“ auf „on“ geändert, nachdem ich dies in mehreren Online-Posts erwähnt gesehen hatte, aber das löst das Problem immer noch nicht.

Ich habe einen virtuellen Windows 7-PC auf meinem Mac mit einer lokalen Datenbank getestet und das funktioniert gut, ohne dass es zu einer Verlangsamung kommt. Das Problem liegt also irgendwo zwischen den Clients und dem virtuellen Server.

Ich habe versucht, NetBIOS über TCP/IP auf den Windows-Clients zu deaktivieren, aber das macht keinen Unterschied.

Ich denke, dass eine Wireshark-Verfolgung der nächste Schritt bei der Problemlösung ist, aber ich dachte, ich poste das mal und schaue, ob jemand anders ein paar clevere Ideen zum TCP/IP-Stack von Windows 7 oder anderen Netzwerkproblemen hat, die das Problem verursachen könnten.

18.02.2018 Darüber hinaus habe ich die Client-Software auf einem anderen Windows 7-Computer am selben Standort wie die Kassen installiert und diese funktioniert perfekt mit der VPS-gehosteten Datenbank.

Ich habe jetzt die VPS-Datenbank in eine lokale Datenbank kopiert und die drei Kassencomputer funktionieren einwandfrei mit dieser lokalen Datenbank.

Das Problem scheint bei bestimmten Computern aufzutreten, wenn auf die vom VPS gehostete Datenbank zugegriffen wird.

Wireshark zeigt keine Probleme mit der Konnektivität zwischen den Clients und dem Server, daher ist die Fehlerbehebung problematisch.

Weiteres Update: Eine mögliche Lösung besteht darin, eine automatische Aktualisierungseinstellung in der Anwendung zu deaktivieren. Diese Einstellung führt bei jeder Ausführung und bei einer Reihe von Bildschirmneuladungen eine große Aktualisierungsaufgabe durch, wodurch große Mengen an Datenverkehr zum SQL-Server erzeugt werden.

Durch das Deaktivieren dieser Option scheint das Geschwindigkeitsproblem behoben zu sein und die Anwendung läuft normal und reagiert zeitnah.

Antwort1

Die Antwort bestand darin, eine automatische Aktualisierungseinstellung in der Anwendung zu deaktivieren. Dies hatte mit der Anzahl der dadurch erstellten SQL-Verbindungen zu tun, und es ist möglicherweise möglich, die Abfrageeinstellungen des MySQL-Servers anzupassen, um die Anzahl der Anfragen zu bewältigen, die mit den automatischen Aktualisierungseinstellungen auftreten.

verwandte Informationen