Make delicious recipes!

Difference between Tomcat, JBoss and Glassfish


Tomcat is merely an HTTP server and Java servlet container. JBoss and GlassFish are full-blown JEE application servers, including an EJB container and all the other features of that stack. Tomcat has a lighter memory footprint (~60-70 MB), while others are much heavier.


Features / Server

Tomcat

JBoss

Glassfish

WebSphere

Servlet Container

Yes

Yes

Yes

Yes

Memory Footprint

Light

Heavy

Heavy


Administration Ease

Yes

No

Yes - UI Console For Administration

Yes - UI Console

JEE Modules

(like EJB, JMS,

Java Mail, JPA,

JAX-WS etc)

None

Some

All

All

Provider

Open Source

Open Source

Sun/Oracle

IBM

Price

Free

Not Free

Free

Very Costly


Tomcat did not have support for EE components in the earlier days.But now, this is no longer the case and Tomcat is able to handle most of the stuff other web servers can.

First, with the emergence of OpenEJB, (a standard that allows Tomcat like servers to deploy EJBs simply by using the OpenEJB plugin), lots and lots of differences between the two type of servers have been eliminated.

Second was the rise of several third party frameworks like Spring, Hibernate, Grails, Rails etc. each of which provides functionalities of some of the Java EE components and together they compete very well with Java EE components. The use of these frameworks gives the extra advantage that the developer can deploy only the component which he requires and gain full control over those components. Thus, he does not need to go for the full fledged EJB application servers which are often heavy to use and some of them are pretty costly.


Lastly, Java continues to add features to its core library which borrows features from all of them and hence the functionalities keep moving from other areas to become part of Java itself. Due to this, these features are available directly inside the plain vanilla Tomcat too.


To sum up, these days, Tomcat can provide almost the same functionality as the other enterprise servers. While Tomcat can be configured to use any component, other servers have the risk of vendor tie-in which means that if server from a specific company is used, then it becomes difficult to integrate the best available software in market as the same might not be supported.




Like us on Facebook to remain in touch
with the latest in technology and tutorials!


Got a thought to share or found a
bug in the code?
We'd love to hear from you:

Name:
Email: (Your email is not shared with anybody)
Comment:

Facebook comments:

Site Owner: Sachin Goyal