내 Linux 서버가 네트워크 트래픽을 따라잡을 수 없는지 어떻게 알 수 있으며 이에 대해 어떻게 해야 합니까?

내 Linux 서버가 네트워크 트래픽을 따라잡을 수 없는지 어떻게 알 수 있으며 이에 대해 어떻게 해야 합니까?

부하가 높은 HTML 페이지를 제공하는 웹 서버가 있다고 가정해 보겠습니다. 어떤 이유로 병목 현상이 CPU나 RAM, 디스크가 아니라 네트워크 자체에 있다고 가정해 보겠습니다. Linux 서버가 너무 많은 트래픽을 보내거나 수신하고 유지하지 못한다는 것을 어떻게 알 수 있습니까? 네트워크 대역폭이 해당 용량의 60%를 초과하는지 어떻게 알 수 있나요? 용량이 초과되면 어떻게 확장하나요?

답변1

일반적으로 한계가 어디에 있는지 전체 시스템을 분석하십시오. 예를 들어,사용 방법론모든 리소스의 활용도, 포화도, 오류를 확인합니다.

모든 환경에서는 CPU 활용도, 인터페이스 대역폭 활용도 등 측정하기 쉬운 기본 성능 지표를 수집할 수 있습니다. Linux에서는 다음과 같은 도구를 사용합니다.순데이터또는 perf는 꽤 많은 측정항목을 세부적으로 표시할 수 있습니다.

환경을 깊이 이해하면 병목 현상이 발생한 위치를 찾는 데 도움이 됩니다. 대역폭이 95Mbit/s로 최대치는 것은 경로에 있는 오래된 100Mbit 스위치 때문이거나 인터넷 서비스가 100Mbit/s이기 때문일 수 있습니다. 또는 스토리지 시스템이 상당히 느립니다. 또는 패킷 버퍼가 충분히 빨리 비워지지 않아 NIC가 오버런을 보고합니다.

가능하다면 웹 서버를 다른 하드웨어의 더 많은 호스트로 확장해 보세요. 둘 이상의 VM의 총 리소스가 도움이 될 수 있습니다. 컨트롤을 사용하여 한 번에 하나의 호스트에서 작업을 시도할 수 있습니다. 그리고 보너스로 로드 밸런싱은 고가용성 기능으로 간주될 수 있습니다.

관련 정보