As Apache and Tomcat have high importance in web server hosting industry. There are both good and bad side this integration of Apache with Tomcat and there are different opinion about the same. Following are some points I would like to attach the discussion.
Clustering – When Apache is used as front-end it works as a front door for multiple Tomcat instances. Apache has the ability to ignore if any one of Tomcats fails. For this you need to use a hardware which is load-balanced.
Security – I we compared Apache with Java then we can know that Java has its own security manages and Apache works on bigger mid-share. Though this is a controversial topic but when one prefer to go fo Apache he needs to secure two systems at the same time but which can be appreciated by search engines also.
Clustering / Security – It is possible to use Apache with multiple tomcats for multiple URL name-spaces and in such situations Tomcats can be more protected individually. Though Apache is smarter proxy server one need to take care of it.
Add-Ons – In Apache one can add PHP, CGI and pearl very smoothly and such addition is very effective for Tomcat. Unlike Tomcat, Apache has many modules to be plugged in.
Dcorators – It possible to perform multiple decorators when Apache is in front of Tomcat which does not support of quick code.
Speed – Though it is very hard to compare speed between Apache and Tomcat, when things come to static content, Apache is quicker than Tomcat. But this only applicable in the case of high traffic websites. There are some exceptions where Tomcat wins the race by using connector wisely.
Socket Handling – In many cases Apache it known as better socket handler than the Tomcat. Tomcat handles the sockets through JVM which require to go through platform, hence makes Tomcat slower.