----- "ego" <[EMAIL PROTECTED]> wrote: > You're probably true. So here is my 'real' problem. > > I need a producer that publish let's say an event E1. I have 3 > different > consumers, each doing a specific task with the event E1. For each > consumer, > I need to find a "backup" solution if the consumer fails, i.e. to > automatically "switch" to a backup consumer so that no event is lost. > The > backup consumer must act as if it were the master consumer; something > like a > durable subscriber, but a subscriber that can automatically restart > on > another machine with the same "identity". > > No sure it's clear..............
Well, it sounds a bit difficult. I would say if the messages are small, just send three copies, one to each queue, and use the exclusive consumer feature. You can probably sent all three messages in a transaction to make sure all or none are sent. I don't know if JMS has "presence" support, so a consumer can ask, or be notified if another consumer disconnects. You might see this in the XMPP protocol for ActiveMQ, but I have not not look at it before. I know the big advantage of XMPP, is presence (and discovery). The big downside to XMPP, is lack of confirmed delivery (no transactions, but XEP-Transaction looks promising). So if a client crashes while processing a message, you are not sure if it finished that message or not. Tom