Sending Synchronously
Because synchronous sending does not have the overhead involved in asynchronous sending, it yields better performance in most cases. Synchronous sending is also the best choice when sending the following types of messages:
- Non-Persistent Messages
When high performance is a concern, use synchronous sending for non-persistent or reliable messages. Although asynchronous sending of non-persistent messages is supported, it is generally not recommended.
- Transactions
Typically, it makes sense for applications to use synchronous sending when using transactions. Sending messages within a transaction does not require a response from the server, so higher throughput can be obtained sending synchronously within a transaction.
Synchronous sending simplifies a transaction; coordination of asynchronous send notifications and committing or rolling back a transaction introduces complexity to the application.
See Send Messages for details.