
나는 약 600개 정도의 많은 수의 절전 프로세스를 가지고 있으며 그 중 대부분은 Apache 프로세스입니다.
이러한 수면 프로세스를 모두 종료해야 합니까, 아니면 Apache가 완전히 실패하게 됩니까?
애초에 이러한 프로세스가 왜 잠자고 있는 걸까요?
서버는 Apache 2.2와 함께 CentOS 6을 실행하고 있습니다.
답변1
시스템의 모든 수면 프로세스를 종료해도 현재 발생한 문제는 물론 어떤 문제도 해결되지 않습니다.
체계적이고 체계적으로 접근하는 것이 난폭하게 퍼덕이는 것보다 훨씬 낫습니다.
개인적으로 나는과학적인 방법(다른 사람들은 그렇게 부르는데뭔가 다른 것) 문제를 진단할 때 시스템 관리 키트백에서 꺼낼 수 있는 훌륭한 도구입니다.
- 해결하려는 실제 문제는 무엇입니까?
서비스가 응답하지 않습니다. 1
이제 우리는 실제 문제가 무엇인지 알고 있으며, 해결해야 할 방향이 있습니다. 해결책을 찾는 데 도움이 되는 몇 가지 정보를 수집해 보겠습니다.
- 문제 시간과 관련이 있나요? 정기적으로 발생합니까, 아니면 무작위로 발생합니까?
- 특정 서비스의 로그뿐만 아니라 다른 로그가 문제의 원인일 수 있으므로 모든 로그를 확인하십시오. 로그 항목에는 일반적으로 타임스탬프가 있습니다. 이는 여러 애플리케이션과 서비스에서 이벤트를 상호 연결하는 데 도움이 됩니다. 이를 사용하세요. 필요한 경우 로그의 상세 정도도 늘립니다.
- 시스템이 무엇을 하고 있는지 살펴보세요. top, vmstat, iostat, sar, ps,tcpdump 또는 심지어 완전한 기능과 같은 도구를 사용하세요.모니터링 시스템.
수집한 정보를 분석해 보세요. 서비스가 응답을 중지하면 시스템에서 실제로 무슨 일이 일어나고 있나요? 시스템 리소스의 상태는 무엇입니까?
해결을 위해 적절한 조치를 취하십시오. 메모리가 부족하고 OOM 킬러가 플레이하러 나오고, 스왑 활동이 너무 높으며, 실행 대기열이 너무 길고, iobound 상태에 있다는 등, 무슨 일이 일어나고 있는지 매우 명확하기를 바랍니다. 명확하지 않다면 아마도 올바른 데이터를 수집하지 않았을 것입니다. 무엇을 해야 할지 알고 계시다면 2번으로 돌아가세요.
4.에 도입된 변경 사항이 무엇인지 모니터링합니다.
변경 사항으로 인해 문제가 해결되었습니까? 더 나은가요? 더 나쁘나요? 차이가 없나요? 여기서 어디로 가는지는 당신이 찾은 것에 따라 달라집니다. 2.로 돌아가서 더 많은 관련 데이터를 수집해야 할 수도 있고, 3. 보유하고 있는 데이터를 재분석하거나 4. 여러 가지 잠재적인 솔루션을 식별했기 때문일 수도 있습니다.
발견한 내용과 변경 사항을 문서화하세요.
직장에서/술집으로/침대로/집으로 돌아가십시오.
1 '내 서버가 느립니다', '내 서버가 너무 많은 메모리를 사용하고 있습니다' 등의 문제가 있을 수 있습니다.