Patent ID: 7912695

Claim:
A system for modeling behavior of a distributed multi threaded J2EE application comprising one or more components, the system comprising: at least one processor; memory; and a plurality of queuing centers for simulating the distributed multi threaded J2EE application, wherein the plurality of queuing centers are configured to emulate handling of multiple threads; wherein the plurality of queuing centers are further configured to handle processes for a limited number of threads by: if an unlocked thread out of the limited number of threads is available when a message comprising a request for service is received, locking the unlocked thread in the queuing center, wherein the locking prevents later messages requesting services from being processed on the thread; sending a second request for service to a second queuing center; and retaining the lock on the thread until the second queuing center responds to the second request for service; and wherein at least one of the plurality of queuing centers is configured to emulate at least one of the one or more components running on one or more java virtual machines by emulating java virtual machine memory management, wherein emulating java virtual machine memory management comprises introducing memory management overhead for emulating garbage collection and memory allocation procedures; wherein introducing memory management overhead comprises: analyzing the received message to determine memory characteristics for the received message; simulating fully occupied memory by pausing the at least one of the plurality of queuing centers; simulating memory allocations in concurrent processing by pausing the at least one of the plurality of queuing centers; and simulating a garbage collection in the java virtual machine based on a message arrival rate and the memory characteristics for the received message.