Hi Peter,
Thanks again for your help.
This is the code that I'm currently using for my SocketAcceptor:
acceptor = new SocketAcceptor();
acceptor = new
SocketAcceptor(Runtime.getRuntime().availableProcessors()+1,
Executors.newCachedThreadPool());
acceptor.getDefaultConfig().setThreadModel(ThreadModel.MANUAL);
acceptor.bind( new InetSocketAddress(port), this);
acceptor.addListener(this);
Many thanks,
Richard.
--
peter royal wrote:
On Apr 19, 2007, at 7:14 AM, Richard Lowe wrote:
I use the following tweaks to help improve performance:
ByteBuffer.setAllocator(new SimpleByteBufferAllocator());
ByteBuffer.setUseDirectBuffers(false);
this is a good start.
Ideally I would love to support 2000+ simultaneous connections on
this test machine. Is there a way of achieving this without my CPU
fan flying off it's spindle and my machine setting alight?
I don't see why its not achievable.
Are you using the ExecutorFilter? What's the configured pool size? And
are you using the SocketAcceptor/Connector constructors that allow you
to pass in the number of processing threads? If its the default, you
may want to bump up to be 2-4x the number of CPU cores you have to
start (while using the ExecutorFilter). Alternately, disable the
executor filter and bump the processor thread count instead.
-pete
[EMAIL PROTECTED] - http://fotap.org/~osi