높은 커널 시간 문제(높은 네트워크 사용량, 높은 인터럽트)를 해결하는 방법

높은 커널 시간 문제(높은 네트워크 사용량, 높은 인터럽트)를 해결하는 방법

Linux에서 많은 네트워크 트래픽을 처리할 때 커널 시간이 매우 높다는 것을 알았습니다. 또한 CPU의 45%가 인터럽트에 사용되는 것으로 나타났습니다. 이 문제를 추가로 해결하려면 어떻게 해야 합니까?

답변1

이러한 systemtap정보를 통해 커널, 그리고 최근에는 추적, 문제 해결 및 디버깅을 위한 애플리케이션에 대한 깊은 통찰력을 얻을 수 있습니다. 나는 그것을 직접 사용하지 않았습니다.

높은 네트워크 트래픽과 높은 인터럽트 트래픽은 네트워크 카드나 드라이버의 밝기가 충분하지 않기 때문일 수 있습니다. 더 높은 수준의 엔드 카드가 더 나은 결과를 제공할 수 있습니다. 커널의 네트워킹 처리도 개선되었으므로 커널을 업데이트하는 것이 도움이 될 수 있습니다.

OTOH, CPU 사용량의 50%가 인터럽트용이고 CPU 사용량이 3%라면 걱정할 필요가 없습니다. 보유하고 있는 데이터를 확인하세요(그리고 수집 방법,정밀한숫자가 무엇을 의미하는지) 주의 깊게 생각해 보세요.

결국 질문은 "foo를 측정하면 기준이 달라집니다"가 아니라 "성능이 좋지 않거나 허용할 수 없습니다. 이를 제거할 수 있도록 병목 현상이 있는 위치를 찾으려면 무엇을 측정해야 합니까?"로 시작해야 합니다. 이로 인해 위의 문제가 발생하면 괜찮습니다. 하지만 어디로 가는지 알고 계실 것입니다.

관련 정보