Information on MQ performance properties in DEVTEST
search cancel

Information on MQ performance properties in DEVTEST

book

Article ID: 137596

calendar_today

Updated On:

Products

CA Application Test Service Virtualization

Issue/Introduction

Refer to section "Sample Performance Benchmarks for IBM MQ Service Virtualization" in the documentation of the DevTest release you are running recommends the below properties and not sure what each property will do.
  • DevTest
     Settings
     
    lisa.pathfinder.on=false
    lisa.vse.performance.enabled=true
    vse.socket.reuse=true
    lisa.net.timeout.ms=60000
    lisa.net.xstream=false
    activemq.msgCompression=true
    lisa.dcm.maxExpandPerLoadChange=50
    lisa.jpm.MaxInstances=5000
    lisa.jpm.unlimited=false
    lisa.overloadThreshold=30000
    lisa.eventPool.maxQueueSize=65535
    lisa.eclipselink.cache.timeout.ms=3600000
    lisa.CycleExecHistory.buffer.size=2
    lisa.vse.metrics.sample.interval=1m
  • JVM Settings (vmoptions)
     
  • -Xmx2048m
  • -XX:+UseConcMarkSweepGC
  •  
  • -Dorg.apache.xml.dtm.DTMManager=org.apache.xml.dtm.ref.DTMManagerDefault This is optimization to improve performance for the Generic XML Payload Parser
    .
     
  • Scope of MQ request/response queues is set to 
    model or Staged.
     
    Concurrent capacity increased to 30.
  • Think time set to 0.

Environment

All supported DevTest releases.

Cause

N/A

Resolution

lisa.pathfinder.on=false - This option disables the feature Pathfinder. (also called as Application Insight). If you are not using this feature, its better to turn it off to improve performance

 

lisa.vse.performance.enabled=true - If your licensing terms allow, you can turn on this option to scale your Virtual Services. This options would allow increasing the capacity of virtual services to more than 1. For normal use of a virtual service, the default capacity 1 is sufficient. More on capacity here: https://techdocs.broadcom.com/content/broadcom/techdocs/us/en/ca-enterprise-software/continuous-testing/devtest-solutions/10-5/using/using-service-virtualization/using-devtest-portal-with-service-virtualization/deploy-virtual-services.html

 

vse.socket.reuse=true - This setting improves efficiency of vitual services by reusing SOCKET objects. Without this option, a new socket and connection will be established for every request which increases the response time and reduces throughput significantly

 

lisa.net.timeout.ms=60000 - UNIT:MILLISECONDS - The timeout value (in milliseconds) used by the underlying messaging system. The messaging system is the way various components of DevTest solution communicate with each other.

 

lisa.net.xstream=false - This setting is again used by the internal messaging system. Allows messaging format as 'OBJECT'.

 

activemq.msgCompression=true - Once again an internal communication system related setting. Compressing messages speed up the communication among components and help them with higher throughput

 

lisa.dcm.maxExpandPerLoadChange=50 - This setting is obsolete. This need not be set. Please ignore.

 

lisa.jpm.MaxInstances=5000 - UNIT:COUNT -This setting determines the number of jobs that the system can handle at the max. The jobs are test instances, virtual service listening threads and units of work

 

lisa.jpm.unlimited=false - This setting ensures that the system doesnt keep taking unlimited load (jobs). This setting is required for the maxInstances setting to take effect

 

lisa.overloadThreshold=30000 - UNIT: MILLISECONDS -The TestNode attempts to figure out if the Simulator is thrashing by checking the actual amount of time slept in think time vs. the amount of think time it was supposed to take. This setting is the amount of additional "slip" in think time that is acceptable before sending a warning TestEvent that the Simulator is overloaded

 

lisa.eventPool.maxQueueSize=65535 - UNIT:COUNT - This determines the number of events that the simulator can queue up for processing

 

lisa.eclipselink.cache.timeout.ms=3600000 - UNIT:MILLISECONDS - This setting determines the lifetime of objects in persistence later

 

lisa.CycleExecHistory.buffer.size=2 UNIT:COUNT - Number of cycle event data that is kept in memory before being flushed out

 

lisa.vse.metrics.sample.interval=1m UNIT:MINUTES - This property controls how often transaction rate and response times are sampled.

 

JVM Settings (vmoptions)

------------------------------------------

-Xmx2048m - Max HEAP memory that the JVM is entitled to use. Please note that you may tweak this setting to a higher value based on your scenario

 

-XX:+UseConcMarkSweepGC - Specifies the type of Garbage collector that the JVM should use. This GC type suits applications that prefer shorter garbage collection pauses

 

-Dorg.apache.xml.dtm.DTMManager=org.apache.xml.dtm.ref.DTMManagerDefault This is optimization to improve performance for the Generic XML Payload Parser.

 

Scope of MQ request/response queues is set to model or Staged.

https://knowledge.broadcom.com/external/article/39770/the-meaning-of-scope-in-the-jms-and-nati.html

Concurrent Capacity:

To understand the right sizing of "concurrent capacity" of a VS, please refer to the detailed example documented at https://techdocs.broadcom.com/content/broadcom/techdocs/us/en/ca-enterprise-software/continuous-testing/devtest-solutions/10-5/deploy-a-virtual-service.html

Please note that every increase in 'Concurrent Capacity' would mean increase in additional listening and processing threads for that Virtual Service which in turn means more CPU and memory consumption

 

Think Time: Time each transaction should wait before sending the response.

 

Additional Information