[Design of Messaging on JBoss (Messaging/JBoss)] - Can acknowledgements be asynchronous for auto_ack?
by timfox
It's my understanding that NACKs (cancels) can always be sent asynchronously from the client to server, since it won't affect the reliability guarantee if they are lost for some reason.
However, with ACKs then, if the ACK fails, the client needs to know this, in the case of CLIENT_ACKNOWLEDGE, or transactional (where the commit does an implicit ack of the messages), therefore the call to acknowledge needs to be synchronous.
However with DUPS_OK, duplicates may happen anyway, therefore we can get away with asynchronous acks, since if one is lost this may result in redelivery which we are ok with anyway.
What about AUTO_ACK? Does the ack need to be synchronous in this case?
With auto_ack without a message listener, the message is acked before it is processed. So messages could be lost anyway, if the client fails. So the once and only once does not apply anywhere. Since the reliability guarantee is lower is it acceptable to use asynchronous acks with AUTO_ACK as well?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3990444#3990444
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3990444
18 years, 1 month