A distributed topic is a single unit of JMS topics that are accessible as a single, logical topic to a client (for example, a distributed topic has its own JNDI name). The members of the unit are usually distributed across multiple servers within a cluster, with each topic member belonging to a separate JMS server.
By configuring uniform distributed topics, 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.
By configuring partitioned distributed topics, topic publishers have the ability to load balance messages to members which provides a highly scalable and available publishing mechanism. For more information, see Developing Advanced Pub/Sub Applications.
The legacy weighted distributed topic feature is still available for users who prefer to manually fine-tune topic members to carry extra message load or have extra capacity. However, Oracle strongly recommends configuring uniform distributed topics to avoid possible administrative and application problems due to a weighted distributed topic not being deployed consistently across a cluster. For more information, see Create weighted distributed topics in a system module.
After creating a uniform distributed topic, you can define a number of optional properties:
Configuring optional General properties includes selecting a destination key for sorting messages as they arrive on members of the distributed topic, 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 topic, select a pre-configured quota specifying the maximum number of bytes or messages that the distributed topic members are allowed to store, or specify a maximum size allowed for messages on the distributed topic members.
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.
Define multicast parameters that enable the delivery of messages to a select group of hosts that subsequently forward the messages to subscribers.