How do I determine whether my J2EE application will be able to handle certain no of transactions.
Determining how much load an application can take is a tricky business.
There are tools available like load runner which will simulate multiple number of clients at a tiime and generate multiple transactions. With this kind of tool you can findout what is the threshold number for perticular application.
Anather raw approach is to put a timestamp logger on start and end of a complex transaction code and take the time in mili secs. Once you have time available start putting .75 % time extra for each additional user load. this .75 % is a kind of tricky figure but is kind of ok as per our hashmap / hashtable rehashing balance.
later after every 10 set of user increment reduce the total value by .75% of the 10 user transaction time. this way you will get a rough idea of how many transactions your application can supprt and how the response time is goning to get hampered.
so the final formula will be
t = time take for single transaction
tCount = number of parallel requests to application.
tNow = t;
while(adding more parallel requests)
tNow = (tNow * .75)/100;
t = t + tNow;
if (mod 10 of tCount)
t = t - ((t * .75)/100)
I guess better way will be to go for Load Runner ;)
Hope this helps