문제

PHP에서 이미지 처리 스크립트를 작성하여 CRON 예약 작업 (OSX)으로 실행됩니다. 시스템에 과부하를 피하기 위해 스크립트는 시스템 부하 ( 'Uptime'사용)를 확인하고로드가 사전 정의 된 임계 값 아래에있을 때만 실행됩니다.

이제 이것을 Windows (2003 Server)로 포팅했으며 시스템로드를 정수 또는 플로트로보고하는 유사한 명령 줄 함수를 찾고 있습니다.

도움이 되었습니까?

해결책

Windows 명령 줄에서 시도해 볼 수 있습니다. 이것은 XP에서 작동하며 다른 많은 정보도 얻습니다.

WMIC CPU

다른 팁

로드를 사용하지 마십시오 ...

이 경우 시스템 부하가 좋은 표시기가 아닙니다. Unix에서는 본질적으로, 현재 얼마나 많은 프로세스가 준비되어 있고 현재 실행되기를 기다리고 있습니다. 그러나 프로세스가 기다려야 할 이유에 대한 여러 가지 이유가 있으므로 시스템의 "로드"가 높더라도 다른 프로세스 비용없이 스크립트가 실제로 실행될 수 있습니다.

... 멋지다

당신은 사용해야합니다 nice(1) Unix와 Windows의 동등한 ( "프로세스 우선 순위")에서 OS는 스크립트를 실행할시기를 결정할 수 있습니다!

스크립트의 우선 순위를 절대 최저 우선 순위로 설정하면 현재 할 일이 없을 때만 스케줄러에 의해서만 실행됩니다.

아마도 스크립트의 하나 이상의 인스턴스가 동시에 실행되는 것을 방지하기 위해 일종의 메커니즘을 구현해야 할 것입니다.

호출 된 명령 줄 유틸리티를 사용할 수 있습니다 PV 이 명령 줄을 사용하여 특정 기간 (기본값으로 500ms)에 걸쳐 프로세스 이름과 CPU% 사용량을 표시합니다.

pve.exe -o"%n\t%c"

사용에 도움이됩니다 -? 사용 가능한 매개 변수를 설명하는 스위치.

OSX/Linux에서 Uptime보다 약간 더 많은 작업이 필요합니다. 첫 번째 열에서 숫자를 총을 총액으로 정해야합니다 (또는 프로세스 이름을 생략하고 단순히 각 출력 라인을 총액 형태를 총액을 얻으려면 총 ( % in %)을 얻으십시오. ) CPU 사용.

위쪽은 약간 더 작업하면 전체 시스템 CPU 소비가 아닌 실행 프로세스가 사용하는 특정 양의 CPU를 얻을 수 있다는 것입니다.

WMI 벤치 마크 시스템로드를 포함하여 Windows의 거의 모든 것을 마크합니다.

나는 찾았다 그것에 대한 실.

표준 Win32 API (GTC) 만 사용하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top