100% CPU 사용률 또는 100% MEM 사용률로 인해 Linux 서버가 더 불안정해 집니까? 충돌이 발생하여 재부팅이 필요합니다.
왜냐하면 나는 다음과 같은 말을 들었기 때문입니다.
"프로세스를 CPU의 90%로 제한한다면 컴퓨팅 성능의 10%를 헛되이 낭비하는 것입니다."
대
"프로세스의 CPU 사용량을 90% 미만으로 제한하십시오. 그렇지 않으면 시스템이 불안정해집니다."
다음 중 어느 진술이 사실입니까? Linux OS는 활용도가 높은 경우를 처리하면 안 되나요?
클라이언트 컴퓨터에서는 로그인, cli 명령 및 모든 대화형 작업 속도가 느려지므로 100% CPU 사용량을 원하지 않을 것이라는 점을 이해합니다. 하지만 서버에서작업자 노드, CPU 사용률을 100%로 설정해야 합니까, 아니면 100% 미만으로 제한해야 합니까? MEM에도 같은 질문이 있습니다.
답변1
CPU 사용량이 100%인 서버는 새로운 작업에 그다지 반응하지 않으며 대화형으로 사용하는 경우 속도가 느려질 수 있지만 계속 작동해야 합니다. 100% 또는 거의 100%에 가까운 CPU 집약적 작업을 실행하는 작업자 노드는 괜찮습니다. 데스크탑 PC는 그리 많지 않습니다.
메모리가 100%인 서버는 작업 종료를 시작하거나 충돌이 발생합니다.
답변2
이것은 대답이 복잡한 질문입니다.
짧은 대답은 아니요, 높은 리소스 활용도 자체가 서버를 불안정하게 만들거나 충돌을 일으키지는 않는다는 것입니다. 하지만...
긴 대답은 상황에 따라 다르다는 것입니다. 예를 들어 CPU 사용률이 높으면 응답 시간이 느려지고, 리소스 충돌이 발생하고, 요청이 서버가 처리할 수 있는 것보다 더 빠르게 대기하는 복합적인 문제가 발생할 수 있습니다. 이는 사실상 서버를 불안정하게 만듭니다.
여기서 프로세스 우선순위도 중요한 역할을 합니다. 우선 순위가 높은 작업에는 CPU 시간이 우선적으로 부여됩니다. 이로 인해 우선 순위가 낮은 작업에 리소스가 부족하게 되어 시스템이 불안정해질 수 있습니다.
반면, 의도적으로 낮은 우선순위로 설정된 CPU 집약적 작업은 시스템 성능에 눈에 띄는 영향을 주지 않고 유휴 CPU를 활용할 수 있습니다. Folding@Home과 같은 프로그램은 이를 사용하여 나머지 시스템에 영향을 주지 않고 백그라운드에서 실행됩니다.
메모리 사용량이 높으면 스와핑이 발생하여 서버 성능이 더욱 저하되고 사실상 서버가 불안정해질 수 있습니다.
메모리 사용률이 높으면 프로세스가 종료되는 메모리 부족 문제가 발생할 수도 있습니다. 그러면 서버가 불안정해지고 충돌이 발생하기 쉽습니다.
그것은 모두 서버가 무엇을 해야하는지에 달려 있습니다. 이렇게 활용도가 높은 웹 서버는 사용할 수 없게 될 위험이 있지만 비디오 인코딩 서버는 괜찮습니다.
그리고 전력 소모, 발열, 냉각 용량 등의 문제도 있습니다.
답변3
그것은 전적으로 해당 서버가 수행하는 작업에 따라 다릅니다.
여기에 이야기가 있습니다. Windows이지만 그럼에도 불구하고 동일합니다.
서버를 100% CPU로 사용하는 소프트웨어 에이전트가 있습니다. 기간. 얼마나 큰지에 관계없이. 서버에서 작업(코어당 하나)을 가져와 실행하는 통계 시뮬레이션 에이전트입니다. 낮은 우선순위에서는 더 높은 우선순위의 제어 스레드를 사용하여 모두 사용 중인지 확인합니다.
100% CPU가 문제인가요? 아니요. 이것이 계획된 일입니다.
SMART 메모리 관리 기능을 갖춘 OTOH 데이터베이스 서버는 캐싱에 최대한 많은 메모리를 사용하고, 그렇지 않으면 필요할 때 메모리를 해제합니다. 다시 말하지만, 문제가 되지 않습니다.