Free and lightweight application server
May 10, 2016

Free and lightweight application server

Anonymous | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User

Overall Satisfaction with Apache Tomcat

Apache Tomcat is the most widely adopted application server used in our company. We have currently over 2000 Tomcat 6 and Tomcat 7 instances and we're starting the adoption of Tomcat 8. Tomcat is used to run internal applications and hosted applications.
  • It's very easy to install and requires few customizations in order to be production grade.
  • Very low memory consumption compared to, for example, to JBoss.
  • Nearly immediate start up time.
  • It lacks a built-in feature to provide auto-recovery in case of failure, for example,OutOfMemoryError.
  • In our company, we've been forced to use external tools like Monit or Java service wrapper.
  • Since it has no license costs, it's possible to scale up infrastructure without additional software costs.
  • The lack of business support is not a problem since there's a huge knowledge base inside our company and in the open source community.
It's clear that JBoss is a full JEE stack implementation while Tomcat isn't, but if you don't need the whole JEE stack there are many lightweight alternatives that implement the required feature with Tomcat.
It's more appropriate for highly scalable stateless applications since it's very easy to add instances to your deploy. Session clustering is not natively implemented, so if you've stateful applications you'll need some externally provided persistency layer.

Apache Tomcat Feature Ratings

IDE support
3
Security management
4
Administration and management
8
Application server performance
10
Installation
8
Open-source standards compliance
8

Using Apache Tomcat

Mainly developers, but also beta testers and, obviously system administrators
System administrators with middleware skills, in particular apache web server and mod_shib, Apache tomcat and Java.
  • Corporate internal portal
  • Web applications used by academic customers
  • Shibboleth identity providers
  • Tomcat is still the number one choice for new applications in our company
  • We plan to use Tomcat inside docker containers
We have a huge knowledge of the product within our company and we're satisfied with the performance.

Evaluating Apache Tomcat and Competitors

  • Price
  • Product Usability
  • Prior Experience with the Product
We have had a long-term positive experience with Tomcat, so we're happy to continue to use it; also because it's free.
In some cases, we've used JBoss enterprise, and while reviewing our choice we realized that probably Tomcat would have covered the customer requirements as well with no additional fees.

Configuring Apache Tomcat

I think that it's just right
It's important to remember to set up the ajp connector properly in server.xml. In particular, the maxThreads value has to be consistent with the number of maxActiveSessions defined inside the application context. It's also a best practise to set a value for connection Timeout for the ajp connector in order to avoid a waste of resources for inactive sessions.
No - there is no facility to customize the interface
No - we have not done any custom code
If you want to delegate authentication to some external entity (for example Shibboleth SP) just remember to set the tomcatAuthentication flag inside server.xml to "false"

Using Apache Tomcat

The manager interface has for sure room for improvement
ProsCons
Like to use
Relatively simple
Easy to use
Technical support not required
Quick to learn
Convenient
Feel confident using
None
  • The configurations are file based (xml) and are well suited for puppet/docker integration

Apache Tomcat Reliability

It's very easy to add instances to an existing deployment and, using apache with mod proxy balancer, to scale up the serving farm
Tomcat doesn't have a built-in watchdog that ensures restart upon failure, so you have to provide it externally. A very good solution is java service wrapper. The community edition is able to restart Tomcat upon out of memories exceptions.
It's very quick and stable at the same time

Upgrading Apache Tomcat

Yes - We've faced the upgrade from Tomcat 6 to Tomcat 7 and the process has been really smooth.
  • The main and most significant is that Tomcat 7 supports Servlet 3.0 specification
  • Developers that want to use the more recent servlet and jsp specifications are asking Tomcat 8