AIF Service - Parallel Processing with Multiple user sessions

Tags: aif, ax2012, parallel processing, aif performance

Recently we hosted an AIF based service which was consumed by external applications running on Java and .Net. It was observed that if multiple users call the service in parallel, AX created only 1 online user session to cater to the requests, due to which the requests were getting queued and processed serially.

The performance on the client applications calling the service differed for each call as below:

Client Id Response Time
Client 1 19 sec
Client 2 49 sec
Client 3 79 sec
Client 4 119 sec

Ideally, there should have been multiple sessions created in AX, one for each request to process the requests in parallel.

Resolution

IIS Application Pool contains a setting to define the Maximum Worker Processes for the Application Pool. The value refers to the number of worker processes allowed to service the requests made for the Application Pool. The default value was set to 1, due to which there was only a single worker process catering to all the requests, leading to sequential processing instead of parallel processing.

SNAGHTML580d13a

Changing this setting to 3 for initial test helped achieve parallel processing with the same response time for all the clients. AX Online Users form showed multiple sessions to process requests separately instead of a single session to cater to all requests. The performance on the Client side after the change was seen as below:

Client Id Response Time
Client 1 19 sec
Client 2 19 sec
Client 3 19 sec

 

Add a Comment