SettableBean
public interface LoadBalancingParamsBean extends SettableBean
The load-balancing parameters allow client to choose how they wish to distribute the work to the configured servers.
Modifier and Type | Method | Description |
---|---|---|
java.lang.String |
getProducerLoadBalancingPolicy() |
The
Producer Load Balancing Policy restricts where a JMS Message Producer
can load balance its messages among members of a distributed destination (DD). |
boolean |
isLoadBalancingEnabled() |
Specifies whether non-anonymous producers created through a connection factory are load balanced within a
distributed destination on a per-call basis.
|
boolean |
isServerAffinityEnabled() |
Specifies whether a server instance that is load balancing consumers or producers across multiple members
destinations of a distributed destination, will first attempt to load balance across any other physical
destinations that are also running on the same server instance.
|
void |
setLoadBalancingEnabled(boolean loadBalancingEnabled) |
Sets the value of the LoadBalancingEnabled attribute.
|
void |
setProducerLoadBalancingPolicy(java.lang.String policy) |
Sets the value of the
ProducerLoadBalancingPolicy attribute. |
void |
setServerAffinityEnabled(boolean serverAffinityEnabled) |
Sets the value of the ServerAffinityEnabled attribute.
|
boolean isLoadBalancingEnabled()
Specifies whether non-anonymous producers created through a connection factory are load balanced within a distributed destination on a per-call basis.
send()
or publish()
.send()
or
publish()
.void setLoadBalancingEnabled(boolean loadBalancingEnabled) throws java.lang.IllegalArgumentException
Sets the value of the LoadBalancingEnabled attribute.
loadBalancingEnabled
- java.lang.IllegalArgumentException
isLoadBalancingEnabled()
boolean isServerAffinityEnabled()
Specifies whether a server instance that is load balancing consumers or producers across multiple members destinations of a distributed destination, will first attempt to load balance across any other physical destinations that are also running on the same server instance.
void setServerAffinityEnabled(boolean serverAffinityEnabled) throws java.lang.IllegalArgumentException
Sets the value of the ServerAffinityEnabled attribute.
serverAffinityEnabled
- java.lang.IllegalArgumentException
isServerAffinityEnabled()
java.lang.String getProducerLoadBalancingPolicy()
The Producer Load Balancing Policy
restricts where a JMS Message Producer
can load balance its messages among members of a distributed destination (DD).
The valid values are:
Per-Member
- The default value. All running members are candidates.Per-JVM
- Only one member per JVM is a candidate.Notes:
Per-JVM
and Per-Member
yield equivalent behavior.Per-JVM
candidate member of a particular DD per
WebLogic Server JVM.Per-JVM
load balance candidates will either be (a) members of a
DD hosted on a cluster targeted JMS Server or SAF Agent that are
running on their preferred
server (for example, members that have not failed over or migrated), OR
(b) the lexicographically least member name on the same JVM where
the DD member is not hosted on a cluster targeted JMS Server or SAF Agent.
A member in (a) takes precedence over a member in (b). If two members satisfy (a),
then the lexicographically least member name is chosen.Replicated Distributed Topic
or if
Load Balance Enabled
is set to false
, then MessageProducers
are 'pinned' to a single member and therefore only load balance
on initial creation or after a failure. If a MessageProducer is already pinned
to a particular DD member on a particular JVM, and
the DD is not hosted on JMS Servers or SAF Agents that are targeted to a cluster,
and a new member of the DD starts on the same JVM, then the MessageProducer's future
messages stay pinned to its original member regardless of whether the member is
still a Per-JVM
load balance candidate.Producer Load Balancing Policy
on a
custom Connection Factory by specifying the system properties
weblogic.jms.ProducerLoadBalancingPolicy
or weblogic.jms.ProducerLoadBalancingPolicy.MODULENAME
on every WebLogic Server in a cluster (the latter property takes precedence
over the former). If a Connection Factory is overridden by one of these system properties,
then the host WebLogic Server will log an Info message BEA-040538 with the name of
the Connection Factory, the system property, and the
system property value once the first MessageProducer uses the connection factory.This attribute is dynamic and can be changed at any time. However, changing the value does not affect existing connections. It only affects new connections made with this connection factory.
isLoadBalancingEnabled()
void setProducerLoadBalancingPolicy(java.lang.String policy) throws java.lang.IllegalArgumentException
Sets the value of the ProducerLoadBalancingPolicy
attribute.
policy
- The Message Producer Load Balancing Policyjava.lang.IllegalArgumentException
getProducerLoadBalancingPolicy()