[jboss-user] [JBoss Messaging] - Re: Reliable delivery

timfox do-not-reply at jboss.com
Mon Feb 11 09:06:12 EST 2008


"vc123" wrote : Hi,
  | 
  | We are evaluating JBoss Messaging suitability for reliable delivery.
  | 
  | I am not quite sure how reliable message delivery (PERSISTENT) is implemented in JBoss Messaging.  Assuming a JDBC persistence manager, does the AUTO_ACK mode result in a JDBC commit after each message ? 
  | 

AUTO_ACKNOWLEDGE mode using synchronous receives provides an "at most once" (see JMS spec) reliability guarantee. Which means, in even of system failure a message can be lost, but you won't get duplicates.

If you want an "once and only once" reliability guarantee (again see JMS spec), then you need to use 

a) Persistent messages
b) Durable queues (i.e. non temporary) or durable subscriptions.
c) Use transacted session at the client side.

All these is explained in the JMS spec. :)

anonymous wrote : 
  | On my tests,  persistent auto-ack send was too fast ( about 3000 1K messages/s) which means that there is no auto commit.  if so,  it would mean that persistent message delivery is not really reliable which is a violation of the JMS spec.
  | 

No, that's not a violation of the spec for previously mentioned reasons. I suspect you are using a non durable subscriber, in which case messages won't get persisted anyway.

Please can you explain whether you are using a queue or topic, whether it is temporary, and if a topic, whether is durable or non durable?

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4128366#4128366

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4128366



More information about the jboss-user mailing list