A distributed queue is a single unit of JMS queues that are accessible as a single, logical queue to a client (for example, a distributed queue has its own JNDI name). The members of the unit are usually distributed across multiple servers within a cluster, with each queue member belonging to a separate JMS server.
By configuring uniform distributed queues, WebLogic Server uniformly creates the necessary members on the JMS servers to which a JMS module is targeted. This ensures the consistent configuration of all distributed destination parameters, particularly in regards to weighting, security, persistence, paging, and quotas across a cluster.
The legacy weighted distributed queue feature is still available for users who prefer to manually fine-tune queue members to carry extra message load or have extra capacity. However, BEA strongly recommends configuring uniform distributed queues to avoid possible administrative and application problems due to a weighted distributed queue not being deployed consistently across a cluster. For more information, see Create weighted distributed queues in a system module.
After creating a uniform distributed queue, you can define a number of optional properties:
Configuring optional General properties includes selecting a destination key for sorting messages as they arrive on the members of the uniform distributed queue, or modifying the load balancing policy.
Configuring optional Advanced properties includes specifying unit-of-order parameters, attaching the credentials of message senders, or defining unit-of-work parameters.
Define upper and lower byte and/or message thresholds for the members of a uniform distributed queue, select a pre-configured quota specifying the maximum number of bytes or messages that the queue is allowed to store, or specify a maximum size allowed for messages on members of the uniform distributed queue.
Define message delivery override values, such as message priority and time-to-deliver values, that can override those specified by a message producer.
Enable the logging of message life cycle information into a JMS message log file. The content of the message log always includes message ID and correlation ID, but you can also configure information like message type and user properties.
Define default message delivery failure values, such as defining a message redelivery limit, selecting a message expiration policy, and specifying an error destination for expired messages.