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