The documentation for the C++ API has a subsection on optimisation, in particular it refers to aynchronous messaging being optimal and of course then refers to the need to explicitly call session.sync().
With the Java JMS API all of this is far from clear, although by default communication is asynchronous. There are references to using sync_persistence in the connection URL and IIRC there is also a property that one can set to force synchronous behaviour (which is the "intuitive" model one would expect with JMS) - unfortunately that hoses performance What I'd really like to achieve is optimum performance whilst still having predictability. What I mean there is that the default behaviour is fast, but if say an exception is throw I want to reestablish my connection and resend the messages that weren't received by the broker. "send" doesn't guarantee that the broker has received the message in asynchronous mode and in the JMS API there is no session.sync() though there appears to be in the underlying undocumented low level API. I "think" that the right way to do this sort of thing is to use transacted sessions - it looks like "commit" calls the low level session.sync() - I guess as one would expect. And testing suggests this is all behaving as I'd expect, but it would be nice to have confirmation that this approach is the best/optimum approach to achieve predictable message delivery and recovery from failure. If it is it would be really good to have some documentation to that effect in the Java subsection as the default behaviour is likely to result in significant message loss in an exception scenario and the "sync_persistence" approach really slooooowwwwwsss things down. MTIA fadams -- View this message in context: http://apache-qpid-users.2158936.n2.nabble.com/Synchronizing-via-JMS-API-JMS-optimisation-tp6158582p6158582.html Sent from the Apache Qpid users mailing list archive at Nabble.com. --------------------------------------------------------------------- Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:[email protected]
