VM 디버깅 - 내부 또는 외부 네트워크 인터페이스를 살펴봐야 합니까?

VM 디버깅 - 내부 또는 외부 네트워크 인터페이스를 살펴봐야 합니까?

가상 머신을 설정했지만 성능이 형편없습니다. VirtualBox에 의해 제어되는 Vagrant입니다. 이 가상 머신이 WordPress 사이트에서 간단한 페이지를 로드하는 데 왜 5초에서 30초가 걸리는지 이해하려고 합니다.

나는 설치했다비트톱페이지를 새로 고치면 가상 머신의 통계를 볼 수 있습니다.

VM 사양

  • 프로세서: 4
  • 기본 메모리: 8192MB
  • 운영 체제: 20.04.2

주요 문제:디버깅할 때 또는 를 살펴봐야 합니까 eth0? 저는 두 인터페이스 모두에서 활동을 보고 있으며 이 맥락에서 무엇이 나오는지, 무엇이 흥미로운지 파악하려고 노력하고 있습니다.eth1


자세한 내용은

페이지를 다시 로드할 때마다 요청이 다음과 같이 전송된다고 가정합니다.

페이지를 새로 고칠 때

(Macbook)        (VM)
My browser -->-- Eth1 -->-- Eth0 -->-- Nginx -->-- PHP-stuff -->-- DB-calls --
                                                                              ˅
                                                                              ˅
Reload done --<-- Eth1 --<-- Eth0 --<-- Nginx --<-- PHP-stuff ----------------˅

맞아? ...그렇다면 체인의 약한 부분을 찾아야 할 것 같습니다.

네트워크 인터페이스를 보면 페이지를 새로 고친 후 오랜 기다림이 어디인지 알 수 있을 것으로 예상됩니다. 하지만 어떤 인터페이스를 살펴봐야 할지 모르겠습니다.

Eth1이 활성화된 경우

eth1 활동

Eth0이 활성화된 경우

eth0 활동

tcpdump -i any port not 22내 가상 머신에서 SSH 터널을 통해 다음 명령을 실행하면 이러한 상황이 언제 발생하는지 확인할 수 있습니다 .

이 설정은 매우 빠른 응답 시간(>5초)으로 Digital Ocean의 스테이징 및 프로덕션 서버에서 실행됩니다.

이 설정의 온라인 버전이 내 로컬 버전보다 빠르다는 점이 짜증스럽습니다!


시도해볼 수 있는 솔루션

eth0두 가지를 더 쉽게 볼 수 있도록 다른 네트워크 모니터링 도구를 찾으려고 노력 중입니다 eth1. 내가 찾은 최고의 것은. 그러나 그것은 나에게 새로운 통찰력을 가져다주지 못했습니다. 그러나 단위는 Bit/s, 및 kBit/s사이를 이동하므로 MBit/s"한 눈에" 빠른 개요를 얻는 것은 불가능합니다.

임의의 시점에 발생하는 상황은 다음과 같습니다.

짐

공유 폴더를 사용해 보세요

공유 폴더가 이러한 가상 컴퓨터에 상당한 부담을 주는 방법에 대해 많이 읽었습니다. nfsd내 호스트에서 NFS를 사용해 보았습니다 . 그러나 TCPdump에 따르면 이것이 느린 Nginx 서버 응답의 원인인 것처럼 보이지 않습니다.

관련 정보