Медленный доступ к MySQL из клиентов Windows на виртуальном сервере

Медленный доступ к MySQL из клиентов Windows на виртуальном сервере

У меня установлена ​​система UniCenta POS с открытым исходным кодом на трех кассовых компьютерах в пабе, где я раньше работал.

Клиенты направляются на виртуальный сервер под управлением CentOS 6 и MySQL 5.6.39 с phpMyAdmin для управления.

Приложение написано на Java и работает с MySQL.

Пару месяцев назад установка начала работать очень медленно, кнопки на экране реагировали через несколько секунд. В оживленном пабе это серьезная проблема.

Я попробовал изменить настройки в my.cnf на сервере, чтобы повысить производительность сервера MySQL, изначально думая, что проблема именно в этом, но это не помогло.

Я обновил программное обеспечение UniCenta до последней версии, чтобы посмотреть, решит ли это проблему, но результата по-прежнему нет.

Я подумал, что попробую клиент на моем Mac с OS-X El Capitan, и он работает отлично, без каких-либо задержек.

Я пробовал устанавливать разные версии Java на клиентские компьютеры, но это не дало никакого эффекта.

Я изменил skip_name_resolve на on после того, как увидел упоминание об этом в нескольких сообщениях в Интернете, но это все еще не решило проблему.

Я протестировал виртуальный ПК с Windows 7 на моем Mac с локальной базой данных, и все работает отлично, без замедлений. Так что проблема где-то между клиентами и виртуальным сервером.

Я пробовал отключить NetBIOS через TCP/IP на клиентах Windows, но это не помогло.

Я думаю, что трассировка Wireshark — это следующий шаг в выяснении проблемы, но я решил опубликовать это и посмотреть, есть ли у кого-нибудь еще какие-нибудь умные идеи относительно стека TCP/IP Windows 7 или других сетевых проблем, которые могут быть причиной проблемы.

18-02-2018 Кроме того, я установил клиентское программное обеспечение на другой компьютер с Windows 7 в том же месте, что и кассы, и оно отлично работает с базой данных, размещенной на VPS.

Теперь я скопировал базу данных VPS в локальную базу данных, и три кассовых компьютера прекрасно работают с этой локальной базой данных.

Похоже, проблема возникает на некоторых компьютерах при доступе к базе данных, размещенной на VPS.

Wireshark не выявляет проблем с подключением между клиентами и сервером, поэтому устранение неполадок затруднено.

Дальнейшее обновление: Возможным исправлением является отключение настройки автоматического обновления в приложении. Эта настройка выполняет большую задачу обновления каждый раз при запуске и при нескольких перезагрузках экрана, создавая тем самым большой объем трафика на SQL-сервер.

Отключение этой опции, похоже, решило проблему со скоростью, и приложение работает нормально и реагирует своевременно.

решение1

Ответом было отключить настройку автообновления в приложении. Это было связано с количеством создаваемых SQL-подключений, и, возможно, можно настроить параметры опроса сервера MySQL, чтобы справиться с количеством запросов, которые происходят с настройками автообновления.

Связанный контент