2017-12-21 1 views
0

1 개의 마스터와 2 개의 슬레이브로 분산 모드에서 테스트를 실행 중입니다. 하나의 슬레이브가 99 명의 사용자를로드하고 다른 하나가 사용자로드를 생성합니다 (등록 정보 파일에서 사용자 수 읽기). 나는 모든 100 개의 요청 (99 + 1)을 함께 실행하기 위해 타이머를 동기화하고 그 값을 100으로 설정했습니다. jmeter가 양쪽 슬레이브에서 테스트 계획을 개별적으로 실행하기 때문에 아마 제대로 실행되지 않습니다. 그래서, 나는 값에 의해 그룹을 읽고있다. 두 slave의 user.properties 파일에서 timer를 동기화하고, slave 1의 값은 99이고 다른 하나는 1이다. 노예 하나. 두 슬레이브의 요청을 어떻게 동기화 할 수 있습니까?Jmeter가 슬레이브에서 요청을 동기화합니다.

답변

0

테스트 계획이 잘 설계되지 않았기 때문에 JMeter 노예가 완전히 독립된 짐이기 때문에이 수준의 동기화에 도달 할 수 없습니다. 따라서 서로에 대해 아무 것도 모릅니다. 나는 다음과 같은 옵션을 제안 할 수 있습니다 :

  1. 단일 스레드 그룹 + If Controller :

    • 읽기만 첫 번째 스레드를 알려줄 수있는 하나의 스레드 그룹에
    • 사용 If Controller__threadNum() function 조합을 모든 요청을 넣어 속성 파일은 다음과 같습니다 :

      • 컨트롤러 : 조건 : ${__threadNum} == 1
        • 샘플러는 특성이
      • 파일 읽기
  2. 단일 스레드 그룹 + Throughput Controller

  3. 다른 스레드 그룹 :

    당신은 수 있도록 Inter-Thread Communication Plugin을 사용할 수 있습니다 99 users load은 execu가됩니다. 1 user load이 끝나면 바로 테드.

관련 문제