가상 서버의 Windows 클라이언트에서 MySQL 액세스 속도가 느림

가상 서버의 Windows 클라이언트에서 MySQL 액세스 속도가 느림

제가 일했던 펍의 컴퓨터 3대에 UniCenta 오픈 소스 POS를 설치했습니다.

클라이언트는 관리를 위해 phpMyAdmin을 사용하여 CentOS 6 및 MySQL 5.6.39를 실행하는 가상 서버를 가리킵니다.

애플리케이션은 Java로 작성되었으며 MySQL에서 실행됩니다.

몇 달 전 설치가 정말 느리게 실행되기 시작했고 화면의 버튼이 응답하는 데 몇 초가 걸렸습니다. 바쁜 술집에서 이것은 심각한 문제입니다.

처음에는 이것이 문제라고 생각하여 MySQL 서버의 성능을 조정하기 위해 서버의 my.cnf에서 설정을 변경하려고 시도했지만 아무런 차이가 없었습니다.

최신 버전의 UniCenta 소프트웨어로 업그레이드하여 문제가 해결되는지 확인했지만 여전히 만족스럽지 않습니다.

OS-X El Capitan을 실행하는 Mac에서 클라이언트를 사용해 볼까 생각했는데 속도 저하 없이 완벽하게 작동했습니다.

클라이언트 컴퓨터에 다른 버전의 Java를 설치해 보았으나 아무런 효과가 없었습니다.

온라인의 여러 게시물에서 언급된 내용을 본 후 Skip_name_resolve를 on으로 변경했지만 여전히 문제가 해결되지 않습니다.

내 Mac에서 Windows 7 가상 PC를 로컬 데이터베이스에 대해 테스트했는데 속도 저하 없이 잘 작동하므로 문제는 클라이언트와 가상 서버 사이에 있습니다.

Windows 클라이언트에서 TCP/IP를 통한 NetBIOS를 비활성화하려고 시도했지만 아무런 차이가 없습니다.

나는 Wireshark 추적이 문제를 파악하는 다음 단계라고 생각하고 있지만 이것을 게시하여 다른 사람이 Windows 7 TCP/IP 스택이나 원인이 될 수 있는 기타 네트워킹 문제에 관한 영리한 아이디어를 가지고 있는지 알아볼 것이라고 생각했습니다. 문제.

18-02-2018 또한, 경작기와 동일한 위치에 있는 다른 Windows 7 컴퓨터에 클라이언트 소프트웨어를 설치했는데 이는 VPS 호스팅 데이터베이스에 대해 완벽하게 작동합니다.

이제 VPS 데이터베이스를 로컬 데이터베이스에 복사했고 컴퓨터가 이 로컬 데이터베이스에 대해 완벽하게 작동할 때까지 세 개를 복사했습니다.

이 문제는 VPS 호스팅 데이터베이스에 액세스할 때 특정 컴퓨터에서 발생하는 것 같습니다.

Wireshark는 클라이언트와 서버 간의 연결 문제를 표시하지 않으므로 문제 해결이 문제가 됩니다.

추가 업데이트: 가능한 수정 방법은 애플리케이션에서 자동 새로 고침 설정을 비활성화하는 것입니다. 이 설정은 실행될 때마다 그리고 화면을 여러 번 다시 로드할 때마다 큰 새로 고침 작업을 수행하므로 SQL Server에 많은 양의 트래픽이 생성됩니다.

이 옵션을 비활성화하면 속도 문제가 해결된 것으로 보이며 애플리케이션이 정상적으로 실행되고 적시에 응답합니다.

답변1

대답은 애플리케이션에서 자동 새로 고침 설정을 비활성화하는 것이었습니다. 이는 생성되는 SQL 연결 수와 관련이 있으며 자동 새로 고침 설정으로 발생하는 요청 수를 처리하기 위해 MySQL 서버 폴링 설정을 조정하는 것이 가능할 수 있습니다.

관련 정보