도구:

도구:

저는 Linux가 다중 사용자/동시 프로세스용으로 제작되었다는 것을 알고 있지만, 기업 수준에서는 Linux 중 다수가 내부 서비스를 지원하기 위한 단일(그러나 큰) 애플리케이션에 사용되며 그 중 극소수의 클라이언트에만 서비스를 제공합니다.

이러한 사용 사례에서 시나리오에 맞게 최적화하려면 시스템이나 커널(특히 Red Hat Linux, Fedora, CentOS)을 어떻게 조정해야 합니까? 대기 시간을 최소화하기 위해 컨텍스트 전환을 줄이고 로컬 디스크 I/O를 거의 사용하지 않습니다.

세션 길이는 지속적일 수 있으며(클라이언트 수가 적기 때문에) 데이터 크기 교환은 작지만 매우 자주 발생합니다(예: 초당 1k~2k 메시지, 크기는 40~100바이트).

답변1

성능 튜닝은 과학인 동시에 마술이기도 합니다. 그것에 관해 완전한 책이 저술되었으며,공급업체 문서

좋은 모니터링으로 시작하여 로드를 추가하고 기준선을 얻은 다음 조정이 의도한 결과를 얻었는지 또는 얻지 못했는지 조정하고 관찰하기 시작합니다.
최적의 결과를 얻을 때까지 헹구고 반복하십시오.

주요 RHEL 또는 CentOS 릴리스는 언급하지 않았지만 모두 데몬과 같은 자동 조정도 포함합니다 tuned. 사전 정의된 성능 프로필을 에서 선택 tuned-adm list 하고 으로 활성화 할 수 있습니다 tune-adm profile <profile-name>.

사용 사례의 경우 RHEL 7 프로필latency-performance다음과 같은 혜택을 누릴 수 있을 것 같습니다.

latency-performance대기 시간을 줄이는 데 중점을 둔 서버 프로필입니다. 이 프로필은 c-state 튜닝과 투명한 대용량 페이지의 TLB 효율성 향상의 이점을 누리는 대기 시간에 민감한 워크로드에 권장됩니다. 이 프로필은 intel_pstate및 를 설정하여 절전보다 성능을 선호합니다 max_perf_pct=100. 이는 투명한 대용량 페이지를 활성화하고 cpupower성능 cpufreq 조정기를 설정하는 데 사용되며 cpu_dma_latency값을 요청합니다 1.

보다 일반적인 Linux 튜닝의 경우브랜든 그레그정말 멋진 치트 시트를 만드는 시스템의 어떤 부분에 어떤 도구를 사용할 것인지에 대한 여러 시각적 다이어그램을 만들었습니다.

도구:

성능 관찰 가능성

sar모니터링에 사용할 옵션은 다음과 같습니다 .

<code>sar</code> 옵션

그리고 밀접하게 관련된:

Linux 벤치마킹 도구

다음을 사용하여 관찰 내용을 조정으로 변환합니다.

튜닝 도구

관련 정보