2012-06-18 27 views
0

我有两个方案,第一个是制片人:测试使用JMeter对消费者和生产者

public class Producer { 
    public static void main(String[] args) throws Exception { 
     final ConnectionFactory cf = new ActiveMQConnectionFactory("tcp://localhost:12345"); 
     final Connection c = cf.createConnection(); 
     final Session s = c.createSession(false, Session.AUTO_ACKNOWLEDGE); 
     final TextMessage msg = s.createTextMessage("rho " + new Date().toString()); 
     final MessageProducer p = s.createProducer(new ActiveMQQueue("rmannibucau")); 
     p.send(msg); 
     p.close(); 
     s.close(); 
     c.close(); 
     } 
} 

,第二个是消费者:

public class Listener { 
    public static void main(String[] args) throws Exception { 
     final ConnectionFactory cf = new ActiveMQConnectionFactory("tcp://localhost:12345"); 
     final Connection c = cf.createConnection(); 
     final Session s = c.createSession(false, Session.AUTO_ACKNOWLEDGE); 
     s.createConsumer(s.createQueue("rmannibucau")).setMessageListener(new MessageListener() { 

     @Override 
     public void onMessage(Message message) { 
      System.out.println(message.toString()); 
     } 
    }); 

    c.start(); 
    s.run(); 
    } 
} 

我使用ActiveMQ的,JAVA,JMS和我想用Jmetter测试来知道消费者在1分钟内可以消费多少消费者,请帮助我。

回答

2

你将需要创建某种Custom Java Sampler.当创建其中一个,你可以从里面调用你的代码,设置开始/结束定时器,如果请求成功/失败等。然后,你把这个jar导入到JMeter中,它将作为Java采样器出现。从这里开始,您可以使用JMeter的所有功能来指定用户,请求,时间限制等。

我希望这已经足够帮助您了。