Hmm, strange. I wonder what's closing down the HTTP connectors? Maybe
a debugger could help. Its not an async issue; where the main thread
is closing the CamelContext is it?
On 07/01/2008, Willem Jiang <[EMAIL PROTECTED]> wrote:
> Hi ,
>
> I just need to implement a HTTP load balancing by use camel HTTP components.
> form
> ("jhc:http://localhost:8888/service").loadBalance().roundRobin().to("jhc:http://suzhou:9001/poc",
> "jhc:http://hangzhou:9001/poc");
>
> Since the camel JHC component can provide a good way for us to leverage
> the asynchronous http transport , but I when set the nbthread to 50 both
> jhc consumer and provider and used 10 threads to send invocation
> message. I got the blow exception;
>
> 4335 [I/O dispatcher 13] ERROR
> org.apache.camel.processor.DeadLetterChannel - O
> n delivery attempt: 2 caught: java.lang.IllegalStateException: I/O
> reactor has b
> een shut down
> java.lang.IllegalStateException: I/O reactor has been shut down
> at
> org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.connect(D
> efaultConnectingIOReactor.java:164)
> at
> org.apache.camel.component.jhc.JhcProducer.process(JhcProducer.java:1
> 32)
> at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelp
> er.java:44)
> at
> org.apache.camel.component.jhc.JhcProducer.process(JhcProducer.java:1
> 23)
> at
> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:5
> 9)
> at
> org.apache.camel.processor.loadbalancer.QueueLoadBalancer.process(Que
> ueLoadBalancer.java:41)
> at
> org.apache.camel.impl.converter.AsyncProcessorTypeConverter$Processor
> ToAsynProcessorBridge.process(AsyncProcessorTypeConverter.java:44)
> at
> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChanne
> l.java:143)
> at
> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChanne
> l.java:87)
> at
> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProc
> essor.java:40)
> at
> org.apache.camel.component.jhc.JhcConsumer$MyHandler.handle(JhcConsum
> er.java:164)
> at
> org.apache.camel.component.jhc.AsyncBufferingHttpServiceHandler.proce
> ssRequest(AsyncBufferingHttpServiceHandler.java:98)
> at
> org.apache.camel.component.jhc.BufferingHttpServiceHandler.inputReady
> (BufferingHttpServiceHandler.java:223)
> at
> org.apache.http.impl.nio.DefaultNHttpServerConnection.consumeInput(De
> faultNHttpServerConnection.java:135)
> at
> org.apache.http.impl.nio.DefaultServerIOEventDispatch.inputReady(Defa
> ultServerIOEventDispatch.java:94)
> at
> org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor
> .java:94)
> at
> org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(Abstr
> actIOReactor.java:189)
> at
> org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(Abst
> ractIOReactor.java:174)
> at
> org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIO
> Reactor.java:137)
> at
> org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.
> java:69)
> at
> org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.
> run(AbstractMultiworkerIOReactor.java:281)
> at java.lang.Thread.run(Thread.java:595)
>
> Any thought ?
>
> Willem.
>
--
James
-------
http://macstrac.blogspot.com/
Open Source Integration
http://open.iona.com