2014-05-14 3 views
0

JMeter 버전 : 2.10. ActiveMQ 5.9JMeter JMS 지점 간 올바른 응답이 반환되지 않음

메시지를 큐에 성공적으로 배치하는 지점 간 JMeter 스크립트가 있습니다. 이 메시지는 소비되고 변형되며 다른 대기열에 배치됩니다. 필자가 jmeter의 요청 방법 만 테스트하면 메시지가 성공적으로 전송되고 변환되어 out 큐로 반환되지만 out 큐의 응답을 소비하도록 JMeter를 구성하면 원래 요청 메시지 페이로드가 응답으로 표시됩니다. . 여기

내 JMeter를 스크립트의 세부 사항이다 :

  1. JMS 자원

    • QueueuConnectionFactory : ConnectionFactory를
    • 이름 요청 큐
    • JNDI :
    • JNDI 이름 대기열 응답 Q.REQ : Q. RPL
  2. 메시지 등록

    • 통신 스타일 : 요청 응답
    • 를 사용하여 메시지의 상관 관계에 대한 대체 필드 : (똑딱)를 사용하여 요청 메시지 ID
    • 내용 : (XML 페이로드)
  3. JNDI 등록

    • InitialContextFactory : org.apache.activemq.jndi.ActiveM QInitialContextFactory
    • queue.Q.REQ :
    • queue.Q.RPL message.in : 관리자
    • java.naming.security.credentials :
    • java.naming.security.principal을 message.out 관리자
  4. 속성

    • 제공자 URL : TCP : // localhost를 : 61,616

또한 응답 대기열을 제거하고 JMSReplyTo를 지정하고 JMSCorrelationID를 수동으로 지정하는 등 몇 가지 조합을 시도했습니다. 누군가가 올바른 방향으로 나를 가리키거나 심지어 작동하는 jmeter proj 예제를 제공 할 수 있다면, 많은 도움이 될 것입니다. 이 가이드를 사용하여 http://jmeter.apache.org/usermanual/build-jms-point-to-point-test-plan.html 시험을 도와줍니다.

답변

0

몇 명의 사람들과 이야기했지만 이것은 알려진 문제이며 지금 당장이 문제에 대한 적절한 해결 방법을 찾지 못했습니다.

현재 제대로 작동하려면 JMeter JMS Pub/Sub Samplers를 사용해야했습니다. 사용자 그룹의 답변을 듣고 그에 따라이 답변을 업데이트 할 것입니다.

1

Q.REQQ.RPL의 정의가 JNDI 속성 섹션에없는 것 같습니다. 그들은 InitialContextFactory 비트와 함께 가야한다.

자세한 내용은 Building a JMS Testing Plan - Apache JMeter 안내서를 참조하십시오.

+0

죄송합니다. 오타가 업데이트되었습니다. Q.REQ와 Q.PRL은 모두 JNDI 등록 정보에서 queue.Q.REQ : message.in, queue.Q.RPL : message.out으로 지정됩니다. 또한, 가이드 감사하지만 jmeter 사이트에있는 가이드를 거의 복제합니다. – gravityBlast