Cisco Cisco Workload Automation 6.3 Technical References
36
Tuning CWA
Configuration and Tuning
JMS
Both the Master and Client Manager rely on the Java Message Service (JMS) for internal and cross communication with
each other. You can think of JMS as the communication link between the Master and Client Manager. That is why JMS
can greatly impact performance, especially if there is a lot of data moving back and forth between the Master and Client
Manager., such as the primary and secondary cache synchronization.
each other. You can think of JMS as the communication link between the Master and Client Manager. That is why JMS
can greatly impact performance, especially if there is a lot of data moving back and forth between the Master and Client
Manager., such as the primary and secondary cache synchronization.
JMS sessions process all messages such as during the use of one worker thread per session. The following threads are
affected:
affected:
MinSessionPoolSize – minimum number of ActiveMQ sessions kept pooled. Having sessions available to handle
requests reduces the cost of allocating sessions on demand.
requests reduces the cost of allocating sessions on demand.
MaxSessionPoolSize – maximum number of ActiveMQ sessions kept pooled.
Note: If more sessions are needed to process messages, the system will still allocate them. This setting only limits
the number of sessions allowed to be pooled.
the number of sessions allowed to be pooled.
MaxConcurrentMessage – maximum number of ActiveMQ messages allowed to be processed concurrently. This
setting is important for increasing throughput and utilizing all the cores on a system when there are many messages
waiting in the ActiveMQ queues.
setting is important for increasing throughput and utilizing all the cores on a system when there are many messages
waiting in the ActiveMQ queues.
The following Message Brokers handle all JMS traffic:
MessageBroker.MemoryLimit – how much memory (in MB) to allocate to ActiveMQ for storing in-flight messages. If
queues become full, ActiveMQ will page messages to disk, which is more expensive than keeping them in memory.
queues become full, ActiveMQ will page messages to disk, which is more expensive than keeping them in memory.
MessageBroker.TempLimit – how much memory (in MB) to allocate to ActiveMQ for storing temporary messages. If
queues become full, ActiveMQ will page messages to disk, which is more expensive than keeping them in memory.
queues become full, ActiveMQ will page messages to disk, which is more expensive than keeping them in memory.
MessageBroker.StoreLimit – how much disk space (in MB) to allocate to ActiveMQ for storing in-flight messages
when memory is full.
when memory is full.
The following master.props properties are what you would tune for DSP to Master message traffic for all DSP
connections:
connections:
MinSessionPoolSize (5)
MaxSessionPoolSize (10)
MaxConcurrentMessages (10)
The following master.props properties are what you would tune for DSP to Master message traffic per DSP connections:
ClientConnection.MinSessionPoolSize (2)
ClientConnection.MaxSessionPoolSize (5)
ClientConnection.MaxConcurrentMessages (5)
The following master.props properties are what you would tune for Remote Master to Master message traffic per Remote
Master:
Master:
RemoteMasterClient.MinSessionPoolSize (2)
RemoteMasterClient.MaxSessionPoolSize (5)
RemoteMasterClient.MaxConcurrentMessages (5)
The following master.props properties are what you would tune for Master to Remote Master message traffic per Remote
Master:
Master:
RemoteMasterServer.MinSessionPoolSize (2)