activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sab <sabarinatha...@ibahealth.com>
Subject Connection reset by peer: socket write error
Date Wed, 26 Jul 2006 08:10:33 GMT

Hi All,

I'm using ActiveMQ 4.0.1 Release and running a thread which sends a simple
Text Message... the idea is just to test the no. of concurrent requests that
the broker can handle.... 

public class LoadTest extends Thread {		
	public static final int THREAD_COUNT = 5000;
	private JmsTemplate jmsTemplate;
	public void run(){						
		try {
			//JMessageCreator is a utility class for creating JMS Messages.
			jmsTemplate.send(new JMessageCreator("Hello World", properties));
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	
	public static void main(String args[]) throws IOException{		
		for(int i=0;i<THREAD_COUNT;i++){
			new LoadTest().start();
		}
	}
}

if my thread count is 2500 everything works fine.. but if it exceeds 5000
then the broker is throwing the below exception and subsequently the
consumer crashes and throws org.apache.activemq.ConnectionFailedException:
The JMS connection has failed: java.io.EOFException....

Exception from the broker service:

DEBUG Transport - Transport failed: java.net.SocketException: Connection
reset by peer: socket write error
java.net.SocketException: Connection reset by peer: socket write error
	at java.net.SocketOutputStream.socketWrite0(Native Method)
	at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
	at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
	at
org.apache.activemq.transport.tcp.TcpBufferedOutputStream.flush(TcpBufferedOutputStream.java:108)
	at java.io.DataOutputStream.flush(DataOutputStream.java:101)
	at
org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:125)
	at
org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:141)
	at
org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:78)
	at
org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:77)
	at
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:44)
	at
org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:60)
	at
org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:211)
	at
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:64)
	at
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:97)
	at
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:63)
	at
org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:114)
	at
org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:122)
	at
org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:87)
	at
org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:143)
	at java.lang.Thread.run(Thread.java:536)

I'm trying these thru a Spring's JMSTemplate for sending and
DefaultMessageListenerContainer for processing the messages.... 

Can anyone tell me why its throwing that exception when the no. of requests
increases....  

Thanks in advance!!

Regards
Sab
-- 
View this message in context: http://www.nabble.com/Connection-reset-by-peer%3A-socket-write-error-tf2002588.html#a5499316
Sent from the ActiveMQ - User forum at Nabble.com.


Mime
View raw message