명령줄 도구를 스트레스 테스트하는 방법은 무엇입니까?

명령줄 도구를 스트레스 테스트하는 방법은 무엇입니까?

나는 파일 시스템에 액세스하는 PHP 스크립트를 스트레스 테스트하여 로드 및 병렬 액세스를 처리하는 방법을 확인하고 싶었습니다.

이 스크립트를 여러 프로세스 x에서 병렬로 여러 번 실행하고 싶습니다 y.

그런 도구가 있나요?

답변1

xargs쉬운 병렬 처리를 허용합니다. 다음은 예입니다(귀하의 xargs 버전이 -0스위치를 지원한다고 가정합니다. 즉,아니요천연두 요구 사항. 이식성이 문제인 경우 )를 사용 echo하고 제거하세요 -0.

maxruns=2000
instances=50
printf '%s\0' {1..$maxruns} | xargs -0 -I, -n 1 -P $instances <program>

printfNULL 문자로 구분된 1에서 2000 사이의 숫자를 출력합니다. 로 파이프됩니다 xargs. 이 옵션은 공백 대신 NULL 문자로 값을 구분함을 -0알립니다 . xargs-I스위치는 다음 문자(임의의 문자 시퀀스일 수 있는 쉼표)를 입력 값으로 바꿉니다. 입력 값은 필요하지 않은 숫자이고 명령줄에 다른 쉼표가 없으므로 입력은 단순히 삭제됩니다. -n 1최대 하나의 매개변수가 제공됩니다 <program>. 한 번에 -P 5050개 이상의 인스턴스를 실행할 수 없습니다 .<program>

관련 정보