camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Charles Hudak <meadand...@gmail.com>
Subject Temporary consumers?
Date Mon, 12 Dec 2011 16:46:04 GMT
I'm wondering if something is possible...

I have a need to implement FIFO queuing on a source basis but I have a
potential to have thousands (millions?) of potential sources (e.g. a set of
mobile devices). I want messages from each source to be processed in FIFO
order seriallly but I need concurrency in general in the system (e.g.
source A can be processed concurrently with source B but all of source A
and source B's messages should be processed in serial fashion.

Sources can theoretically join and leave the system at any time so there
isn't any way to pre-configure them when the system starts.

For capacity reasons idle source endpoints (consumers) should disposed of
so they don't consume resources.

So, in general, what I want to do is:

When a message is received from sourceA an endpoint (consumer) is spun up
to process the message (and any additional messages for sourceA that come
in while the endpoint is active) but once the endpoint becomes idle and is
receiving no more messages, it should be closed down.

Is something like this doable in Camel? Does anyone know how I would
configure things to get this to work?

Thanks in advance for any pointers...

Charles

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message