Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Java Servlet container performance?

I'd like to ask the Java pros here a question about my current study that I am about to do - what are the key contributors to the differences in efficiency of various servlet containers? I need to compare Tomcat/JBoss/Glassfish/Jetty etc. and I need to know what "factors" may affect the results in the most significant way? I am going to write mock applications for that purpose, so any recommendation for a Java feature/framework/library etc. that I might implement there so that I can greatly increase the load of the containers (actually the containers, I do not care about the load of the machine since I am going to run all the tests on the same machine of course), would be appreciated! I need the study to be as objective as possible. Thanks for any help guys!

like image 869
Marek Matejka Avatar asked May 27 '11 06:05

Marek Matejka


2 Answers

Some things that could tax a web container (apart from lots of requests, of course):

  • Working with a small heap (e.g. only 128 or 256 MB)
  • Passivating sessions (have large serializable objects in every session, too large to keep all in memory)
  • Serve static resources (lots of small ones, or some big ones)
  • Requests that fail (404 or server error)
  • JSPs that include a lot of other JSPs
  • Large number of different JSPs
  • Large number different servlet mappings
  • Large number of chained servlet filters
  • Large number of separate applications
  • Redeploying applications (make sure the apps themseves have no classloader leak)
like image 171
Michael Borgwardt Avatar answered Oct 07 '22 09:10

Michael Borgwardt


Some more parameters:

  1. Compression enabled
  2. Caching enabled
  3. Turing the buffer sizes
like image 34
Ramesh PVK Avatar answered Oct 07 '22 10:10

Ramesh PVK