Hostwinds 블로그


CPU로드 : 무엇이며 읽고 관리하는 방법 나타난 그림

CPU로드 : 무엇이며 읽고 관리하는 방법

으로: Hostwinds Team  /  유월 28, 2024


설문 조사에 따르면 시스템 충돌의 68%가 높은 CPU로드 (Site24X7)로 인한 것으로 나타 났으며, 웹 서버 나 컴퓨터 및 리소스 등 컴퓨터를 주시하는 것이 왜 중요한지를 강조합니다.

CPU로드, 그것이 무엇인지, 무엇을하는지, 성능을 모니터링하는 방법 및 모범 사례를 살펴 보겠습니다.

CPU로드 란 무엇입니까?

CPU로드는 웹 서버 또는 컴퓨터의 중앙 처리 장치 (CPU)가 주어진 시간에 처리 중입니다.일반적으로 CPU에 의해 실행되는 프로세스 수를 나타냅니다.

프로세스는 컴퓨터 또는 웹 서버가 웹 페이지에 서비스를 제공하거나 Word 문서를 열면 작업을 처리하고 우선 순위를 정하는 방법입니다.모든 프로세스에는 일정량의 CPU가 실행해야합니다.

CPU로드 메트릭

CPU 부하는 1 분, 5 분 및 15 분의 3 가지 기간에 걸쳐 평균으로 표시됩니다.이 숫자는 다음과 같습니다.

1 분 부하 평균 : 마지막 순간에 실행할 준비가 된 평균 프로세스 수.

5 분 부하 평균: 단기 변동을 부드럽게하여 지난 5 분 동안 평균 부하를 보여줍니다.

15 분 부하 평균 : 지난 15 분 동안 평균 부하를 보여주는 장기보기를 제공합니다.

좋은 CPU 부하 평균은 무엇입니까?

"좋은"CPU 부하 평균을 구성하는 것은 CPU 코어 수와 시스템의 특정 사용 사례를 포함한 여러 요인에 따라 다릅니다.

a 단일 코어 CPUCPU가 과로되지 않으며 갑작스런 작업량 증가를 처리 할 수있는 충분한 용량이 있어야한다는 것을 의미하므로 부하 평균 1.0 미만이 좋습니다.부하 평균 1.0은 CPU가 완전히 활용되었음을 의미합니다.부하 평균이 1.0을 초과하면 일부 프로세스가 CPU 시간을 기다리고 있음을 나타냅니다. 이는 처리가 느려질 수 있습니다.

에 대한 멀티 코어 CPU, 부하 평균을 코어 수로 나눕니다.따라서 쿼드 코어 CPU의 부하 평균 4.0은 CPU가 완전히 활용되었음을 의미합니다.

CPU 코어 당 실제로드 임계 값

유휴 상태에서 낮은 부하 :

  • 코어 당 0.0 ~ 0.5 : CPU가 대부분의 시간에 활용되지 않았거나 유휴 상태를 나타냅니다.

적당한 하중:

  • 코어 당 0.5 ~ 1.0 : CPU가 적당한 워크로드를 처리하고 최적으로 수행하고 있음을 시사합니다.

높은 부하 :

  • 코어 당 1.0 ~ 2.0 : CPU가 크게로드되었지만 여전히 관리 가능한 한도 내에 있음을 나타냅니다.시스템은 여전히 ​​잘 수행 할 수 있지만 약간의 둔화가있을 수 있습니다.

과부하 :

  • 코어 당 2.0 이상 : CPU가 과부하되어 성능 저하가 상당한 성능 저하를 나타냅니다.이로 인해 종종 응답 시간이 길고 잠재적 인 시스템 불안정이 발생합니다.

CPU로드 모니터링

대부분에서 사용할 수있는 명령 및 도구를 사용하여 CPU로드를 모니터링 할 수 있습니다. 운영체제.이들은 실시간 통계를 제공하고 시스템 성능을 모니터링하는 데 도움이됩니다.

UNIX와 같은 운영 체제의 경우

'TOP'명령 : 이 명령에는 CPU로드, 메모리 사용 및 실행 프로세스에 대한 실시간 정보가 표시됩니다.어떤 프로세스가 가장 CPU 시간을 사용하는지를 보여 주므로 리소스 헝가리 애플리케이션을 쉽게 식별 할 수 있습니다.입력하면 '상단'명령 행에는 다음과 같은 출력이 표시됩니다.

top - 12:34:56 up  1:23,  1 user,  load average: 0.20, 0.25, 0.30
Tasks: 123 total,   1 running, 122 sleeping,   0 stopped,   0 zombie
%Cpu(s):  3.2 us,  1.0 sy,  0.0 ni, 95.5 id,  0.2 wa,  0.0 hi,  0.1 si,  0.0 st

출력은 기본적으로 CPU 사용에 의해 정렬 된 지속적으로 업데이트 된 시스템 프로세스 목록입니다.또한 각 코어에 대한 부하 평균 및 CPU 사용량의 백분율을 표시합니다.

'가동 시간'명령 : 'Uptime'명령은 시스템 실행 기간과 지난 1, 5 및 15 분 동안 평균 부하를 빠르게 요약합니다.자세한 프로세스 정보로 다이빙하지 않고 시스템 부하를 빠르게 점검하는 데 유용합니다.입력하면 '가동 시간'터미널에서 당신은 얻습니다 산출 이와 같이:

10:34:52 up 5 days,  3:46,  3 users,  load average: 0.28, 0.18, 0.12

이 출력은 현재 시간, 시스템 실행 기간, 활성 사용자 수 및 부하 평균을 보여줍니다.

'PS'명령: 이 명령에는 CPU 및 메모리 사용량과 함께 실행되는 프로세스가 나와 있습니다.CPU로드가 높은 특정 프로세스를 식별하는 데 도움이됩니다.'추신'명령에는 많은 옵션이 있지만 일반적인 사용법은 최고 CPU 소비 프로세스를 보는 것입니다.이렇게하고 다음 명령을 실행하십시오.

ps -eo pcpu,pid,user,args | sort -k 1 -r | head -10

이 명령은 다음과 같습니다.

  • 알려진 모든 프로세스를 선택하십시오 ('EO')

  • 각 프로세스 CPU 사용을 표시합니다 ('PCPU'),

  • 디스플레이 프로세스 ID ('PID')

  • 디스플레이 사용자 ('사용자') 명령을 시작했습니다

  • 프로세스를 시작한 특정 명령을 보여줍니다 ('args')

  • 상위 10 개 프로세스를 정렬합니다 ('머리 -10') 하강 순서로 CPU 사용에 의해 ( '정렬 -K 1 -r')

출력은 다음과 같이 보입니다.

%CPU   PID USER     COMMAND
20.0  1234 johndoe  /usr/bin/python3 script.py
15.5  2345 janedoe  /usr/bin/java -jar application.jar
10.2  3456 johndoe  /usr/bin/gcc -o program source.c
 8.0  4567 janedoe  /usr/bin/python3 another_script.py
 6.5  5678 root     /usr/sbin/apache2 -k start
 4.0  6789 nobody   /usr/bin/nginx -g daemon off;
 3.5  7890 johndoe  /usr/bin/perl script.pl
 2.5  8901 janedoe  /usr/bin/mysql -u root -p
 1.0  9012 root     /usr/bin/sshd -D
 0.5  9123 johndoe  /bin/bash

Windows 시스템의 경우

Windows는 기본적으로 지원하지 않습니다 '맨 위''추신' Unix와 같은 시스템과 같은 명령.그러나 여전히 CPU 리소스를 확인할 수 있습니다.

작업 관리자: 필요하지 않은 사용자 친화적 인 도구 명령 줄 지식, 작업 관리자는 CPU 사용에 대한 개요를 제공하고 응용 프로그램 및 프로세스 실행에 대한 자세한 정보를 보여주는 그래픽 도구입니다.

  • 프레스 'ctrl+shift+esc'작업 관리자에 액세스합니다

거기에 있으면 "공연"실시간 CPU 사용을 볼 수있는 탭 또는"프로세스"각 실행 프로세스의 세부 사항을 볼 수있는 탭.

리소스 모니터: 이것은 창문입니다 CPU 사용 및 시스템 리소스에 대한 자세한 통찰력을 표시하는 명령 줄 옵션.

  • 유형 'resmon'실행 대화에서 ('WIN+r') 그리고 누르십시오 시작하다.

단일 코어 대 멀티 코어 시스템

핵심은 프로그램에서 지침 실행과 같은 실제 작업 (작업)을 수행하는 CPU의 일부입니다.

단일 코어 CPU : 단일 코어 프로세서에서 CPU는 한 번에 하나의 작업 만 처리 할 수 ​​있습니다.컨텍스트 스위치가 가능하므로 작업간에 빠르게 전환하여 여러 응용 프로그램을 실행할 수 있습니다.그러나 단일 코어 CPU는 너무 많은 동시 작업으로 빠르게 빠르게 다운 할 수 있습니다.

멀티 코어 CPU : 멀티 코어 프로세서는 단일 CPU 내에 2 개 이상의 코어를 포함합니다.각 코어는 독립적으로 자체 작업을 실행하여 성능을 크게 향상시키고 진정한 멀티 태스킹을 허용합니다.

CPU로드 대 CPU 활용

CPU로드 및 활용을 모두 모니터링하면 서버가 처리 기능을 얼마나 효과적으로 활용하고 있는지 이해하는 데 도움이됩니다.

CPU로드 : CPU 시간을 기다리는 작업 수를 나타냅니다.다른 기간 (1 분, 5 분 및 15 분)에 걸쳐 부하 평균으로 표시됩니다.이 평균은 단기 및 장기 작업량 추세에 대한 통찰력을 제공합니다.높은 CPU로드는 작업이 리소스 처리를 위해 경쟁하고 있으며 잠재적으로 응답 성 및 성능 저하가 발생할 수 있음을 시사합니다.

CPU 사용 : CPU가 적극적으로 처리하는 작업의 시간 비율을 측정합니다.높은 CPU 사용은 CPU가 적극적으로 지침 및 처리 데이터를 실행하고 있음을 나타냅니다.그러나 작업이 효율적으로 관리되는 경우 높은 활용만으로도 과부하 된 시스템을 암시하는 것은 아닙니다.

높은 CPU 부하의 원인

높은 CPU 부하로 인해 발생할 수 있습니다.

집중적 인 계산 작업 : 복잡한 계산을 실행하거나 대규모 데이터 세트를 처리하면 비디오 렌더링 또는 시뮬레이션 실행과 같이 CPU로드가 증가합니다.

너무 많은 작업이 동시에 실행됩니다: 동시에 실행되는 여러 응용 프로그램 또는 배경 프로세스로 인해 CPU로드가 높을 수 있습니다.예를 들어, 웹 브라우저, 비디오 편집기 및 게임을 동시에 실행하면 CPU를 긴장시킬 수 있습니다.

비효율적이거나 고착 된 프로세스 : 일부 프로세스는 필요한 것보다 더 많은 CPU 시간을 사용하거나 끝없는 루프에 갇혀 CPU 리소스를 지속적으로 소비 할 수 있습니다.이것은 종종 제대로 설계되지 않았거나 버그가 많은 소프트웨어에서 발생합니다.

CPU로드 관리 및 감소

연구에 따르면 유지 관리는 a를 유지하는 것으로 나타났습니다 CPU 부하 70% 미만 할 수있다 시스템 수명 개선 30%.즉, CPU로드를 확인하면 성능이 향상 될뿐만 아니라 하드웨어 수명도 연장됩니다.

높은 CPU 부하를 줄이는 방법은 다음과 같습니다.

문제가있는 프로세스 종료 또는 다시 시작 : 너무 많은 CPU를 소비하는 작업을 식별하고 종료하십시오.예를 들어, 응용 프로그램이 높은 부하를 유발하는 경우 작업을 종료하거나 응용 프로그램을 다시 시작할 수 있습니다.최상위 명령은 이러한 작업을 발견하는 데 도움이 될 수 있습니다.

소프트웨어 및 드라이버 업데이트 : 구식 소프트웨어 및 드라이버는 비효율적 인 CPU 사용으로 이어질 수 있습니다.시스템을 업데이트하면 버그를 수정하고 리소스 사용을 최적화하여 성능을 향상시키는 데 도움이 될 수 있습니다.

문제가있는 응용 프로그램을 다시 설치하거나 다운 그레이드합니다. 응용 프로그램이 지속적으로 높은 CPU로드를 일으키면 다시 설치하거나 이전 버전을 사용하면 문제가 해결 될 수 있습니다.때로는 최신 버전에는 CPU 사용이 높은 버그가 있습니다.

컴퓨터 재부팅 : 때로는 구식 재부팅이 좋은 재부팅으로 인해 높은 부하를 유발하고 시스템을 재설정 할 수 있습니다.이것은 임시 문제를 해결하는 빠르고 쉬운 방법입니다.

CPU로드 모니터링은 서버의 성능과 안정성을 유지하려면 주시하는 중요한 지표입니다.CPU로드 메트릭을 이해하고, 적절한 도구를 사용하고, 정기적으로 체크 업을 수행하면 과부하를 방지하고 웹 서버 또는 컴퓨터가 원활하게 실행되도록 할 수 있습니다.

작성자 Hostwinds Team  /  유월 28, 2024