If the server fails while we are in a publish() call,
we should consider doing something more interesting
than simply throwing a JMSException back to the caller.
It might be cool to have a client-side durable option
that automatically publishes when the connection is
restored, or an auto-backoff feature.
This is definitely an area where UberMQ can shine over
competitive JMS providers.