search cancel

Service Virtualization services failing due to high CPU usage by Performance VSE

book

Article ID: 188619

calendar_today

Updated On:

Products

CA Application Test Service Virtualization

Issue/Introduction

Service Virtualization services failing due to high CPU usage by Performance VSE.

The VSE host server's CPU is going over 80% during the load test and subsequently causing the mock service requests to fail.

 

Cause

When the Virtual Service Environments (VSEs) are all running with high 'Capacity (500)', the capacity setting will cause the VSEs to open 500 listener threads. Therefore, having each VSE set to 500, causes the system to open 500 listener threads, for each VSE started, and this is causing unnecessary memory consumption.

Another thing to consider is the allocated memory for the Java Runtime Environment (JRE). By default, there is only 512 MB of memory allocated to the JRE, and as a result, Java will only allocate 512 MB of memory for each VSE that it starts.

Environment

All supported DevTest releases.

Resolution

To help improve the performance of the SV server:

  1. Lower the VSE log level to WARN.
  2. Increase the allocated memory for the JRE to 2GB by setting -Xmx2048m and restart the VSE
  3. Change the VS's capacity to 15, from 500, to reduce the unnecessary number of listener threads.

After these changes have been made, and the VSE service has been restarted, monitor the memory consumption of the VSE for the entire duration of the test (before running the test, at the time the test is running, and then after the test completes). This will help validate the settings. You may have to adjust the allocated memory and fine-tune the settings as needed.

Additional Information

Performance Tuning for DevTest VSE