boday wrote:
>
> I'm using SMX 3.3.1 and Camel 1.6.1. I have the following Camel route
> which simply takes inbound HTTP posts and sends them to an AMQ queue. I
> was getting pretty good throughput (400+/sec) until I added the 3rd line
> to process the inbound data (seemed necessary to populate the AMQ message
> body correctly...not sure why though). Now my throughput is cut to
> ~150/second.
>
> Any ideas why that would be? I can't imagine the overhead of the
> processor is that much...but apparently this setup is causing some issues.
>
> from("jetty:http://www.test.com")
> .inOnly() //is this necessary?
> .process(new HTTPInboundService()) //slows things down considerable
> .to("activemq:GatewayMsgQueue");
>
> class HTTPInboundService implements Processor {
> public void process(Exchange exchange) throws Exception {
> try {
>
> exchange.getOut().setBody(exchange.getIn().getBody(String.class));
> } catch (Exception e) {
> logger.error("HTTPInboundService.error->" +
> e.getMessage());
> throw e;
> }
> }
> }
>
> Along these lines, is there a better way to get high volume (400+ msg/sec)
> HTTP data into an AMQ queue (for downstream processing)? I tried adding a
> seda queue in between the two...but the seda queue just filled up and
> errored out after a few minutes. Its like AMQ can't keep up with the
> traffic...does this sound right?
>
> from("jetty:http://www.test.com")
> .inOnly()
> .to("seda:inbound?size=20000");
>
> from("seda:inbound?size=20000")
> .thread(100)
> .process(new HTTPInboundService())
> .to("activemq:GatewayMsgQueue");
>
> thanks
>
>
You can do the inOnly when you send it to AMQ
from("jetty")
.to().inOnly("activemq")
But you may need 1.6.2 as we have fixed some JMS related issue when doing
InOut and sending to a JMS destination using fire and forget (inOnly)
instead. Cant remember if that was fixed in 1.6.1 I doubt that.
--
View this message in context:
http://www.nabble.com/Camel-throughput-issues...HTTP-to-AMQ-tp24648117p24698025.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.