Virtual Service does not process new requests while live invocation step is waiting for a response
search cancel

Virtual Service does not process new requests while live invocation step is waiting for a response

book

Article ID: 135687

calendar_today

Updated On:

Products

CA Application Test Service Virtualization

Issue/Introduction

A HTTP/S Virtual Service with capacity 1 on a Functional VSE, will not process another request until the live invocation step gets a response back.

The same virtual service is able to accept new requests when there is a delay in response introduced using think time for a specific transaction and not when the delay is introduced due to the live invocation step.

Environment

All supported DevTest releases.

Cause

N/A

Resolution

When there is a think time set, the VSM knows ahead of time what is going to be the precise delay in giving a response back to the first request since there is no live invocation involved. 

The Virtual HTTP/S responder step hands off the task of responding back to the first request to a thread and moves on to listening for new requests.

In cases where there is live invocation, there is no way to predict the expected response time from the live server. It has to wait like a blocking call till the live server responds or times out. 

The problem roots from the fact that the live invocation takes longer duration and its a blocking call.

If there is a need to get the a response from the live invocation, you could try running the VS initially in 'Learning mode' and once the VS has sufficiently learned, you may switch to stand-in mode. 

This way, most requests would be handled by the VS and give a better throughput.

A functional VSE can handle 10 TPS when each transaction have a response time of 100 ms or less.