Glassfish Vs Tomcat (Java app servers)
Solution 1:
Glassfish is an application server as it handles EJB requests (EJB Container) while Tomcat is a Web Container - it can't handle EJB components. So, what are the components of the application you plan to run. If your application uses Servlets and JSPs, then GlassFish is an overkill. If you have EJBs then you can't use Tomcat anyway. So, I think it starts with your requirements first.
Solution 2:
Don't forget to consider Jetty. I like very much:
- its ease of configuration and deployment (just unzip it and optionally edit one config file)
- the fact that it's easily embeddable in other applications (with a single jar)
- its support for continuations a lot before the Servlet 3 spec is ready
Check this comparison out, it's done by a Jetty dev, but it's very fair.
Some other comparisons:
- http://raibledesigns.com/rd/entry/jetty_vs_tomcat_vs_resin
- http://raibledesigns.com/rd/entry/glassfish_2_vs_tomcat_6
- https://rogerkeays.com/blog/glassfish-vs-tomcat