We experience very poor scalability using the EntireX .NET-wrapper. It seems that EntireX queues up parallel calls and executes them in sequence.
On Microsoft Internet Information Server 6.0 we have a web-application that uses the EntireX .NET-wrapper to call our mainframe running Natural/Adabas. Here we have two Natural Sub-programs, lets call them A and B.
We have generated two .NET classes wrapping A and B using the EntireX .NET wrapper application (Visual Studio plug in).
When we call A it takes 12 seconds, when we call B it takes a quarter of a second. The problem arises when one user calls A and another user immediately afterwards calls B. In this case B takes 12.25 seconds, meaning it waits for A to execute first.
User 1 uses a separate thread to instantiate a new broker, so does B. The problem is that even though the EntireX runtime receives two requests from 2 different threads, it chooses to execute them in sequence.
We must have done something wrong, maybe some configuration?
Can anyone please help?
(We have tried running the application on two different servers. Executing a call to A on one and a call to B on the other. This test has shown that the server application running on the mainframe is able to handle these requests in parallel. Our problem is when a call to A and B is made from the same server.)