Is Apache Tomcat an Application Server?

posted by avanabs on June 9, 2010 09:22 PM

In a word, Yes. Tomcat is an "Application Server" for certain types of applications, including a large percentage of the applications being developed today. The answer depends, of course, on your definition of “Application Server”. It also depends on whether you think Tomcat is limited to the Apache Tomcat Project, or whether Tomcat also includes all the add-ons and plug-ins that have been made available through open source or commercially.

In any case, I assert that Tomcat is indeed an Application Server, all by itself. Tomcat becomes a much richer Application Server as you modularly (the only sane approach, IMHO) add functionality as required by your specific application.

So, what’s an “Application Server”?

I frequently hear the questions “What’s an application server?, “Is (or isn’t) XYZ an application server?”, and “Do I really need an application server?”. These questions also show up in various internet FAQ’s, blogs, etc. Some of the resulting discussions are almost hilarious, with firmly held beliefs sometimes swamping rational thought and one recent discussion at a major client bordered on open warfare. I too have some opinions, though perhaps not as vehemently held, based on years building applications across many architectures and technologies.

Initially “application servers” were the hardware and operating system for running application code in a two tier environment. The other server was the database server, typically running on another machine. Later on, as web applications evolved, the user interface moved to the client machine, the business logic stayed on the “application server”, and the database remained on its own server. Later yet, Java application servers were introduced which are based on the Java™ 2 Platform, Enterprise Edition (J2EE™). J2EE typically uses a multi-tier distributed model. This model generally includes a Client Tier, a Middle Tier, and a Data Tier. The Client Tier consists of one or more applications and/or browsers. The J2EE Platform is in the Middle Tier and consists of at least a Web Server, Servlet engine, and an EJB lots and lots of other "stuff". (For more information if you need a separate Web Server, see Mark Thomas' article on Myth or truth: One should always use Apache httpd in front of Apache Tomcat to improve performance?) The servers are also called "containers". There can be, and often are, additional sub-tiers in the middle tier, particularly in today's service architectures. The Data Tier has existing applications providing data services and/or databases.

To be clear, application servers are definitely NOT required to build sophisticated applications. In the past, I’ve coded TCP/IP and a FTP-like service directly into an electronic publishing application, for example, and I have re-invented data access/caching too many times over the years. Also, sophisticated frameworks like Spring provide rich JAVA application services, but they do not require a JEE application server to function. All that said, I definitely do not want to have to re-create those services ever again and in my wildest nightmares wouldn’t contemplate developing them from scratch myself. Application servers absolutely do make development easier, and far more productive, when building sophisticated application software. Even extremely powerful frameworks like Spring can benefit from the integrated services that an application server provides, so “Application Servers” will be with us for the foreseeable future.

There are many definitions (a Google search returns almost a million references) for “Application Server” floating around the industry; in all too many cases these are promulgated by vendor marketing departments with the primary objective being the assertion that “we are and they aren’t”. So, what do we think of when we talk about an "Application Server"?

Common Characteristics of an Application Server

  • Fits between the OS (or JVM) layer and the application layer…e.g. it’s “middleware” or a "framework"
  • Provides “services” (sometimes called "components") to the application, eliminating the need for the application developer to create or attempt to integrate and manage these (often complex) services from scratch
  • Services are invoked (implicitly or explicitly ) by the application as needed, rather than being coded into the application
  • Supports multiple applications simultaneously
  • Typically, but not always, includes an administrative/configuration function for managing both the environment and its applications

Thus, an application server is the code (also called a “framework” or a “container”) that sits between the OS and the application and provides a suite of services for the application (except with Microsoft, of course, where services are embedded in the OS and into the IDE’s). An “application server” is not necessarily a “JEE Application Server”, vendor marketing not withstanding, although many people do think they are synonymous.

For our purposes, we are specifically focusing on the world of JAVA, although the most widely used “application server” in the world is arguably Microsoft Windows, which provides many application services beyond the typical OS, coupled with any of the Microsoft Visual IDE’s. The big boys in the JAVA/JEE server space were BEA (now gone…sigh, acquired by Oracle), IBM, Oracle, SUN (also now gone, acquired by Oracle), and more recently jBoss (acquired by RedHat), Geronimo, and the like. The other big boy in JAVA applications servers, at least for the foreseeable future, is Tomcat, which offers many technological and business advantages over the commercial JEE Application Servers, as well as having some limitations.

How Much Application Server is Enough?

Today’s commercial JEE servers provide massive functional overkill for most applications, leading to needless cost and complexity. This is because the JEE application server vendors (and indeed the JEE specification itself) were being driven over a period of years by the best/most demanding customers to provide products that did absolutely everything for everybody. Commercial application servers also vary considerably in the range and quality of the services they offer to the IT function, a portion of which of which are based on “standards” (JEE, CORBA, etc).

These application servers are highly sophisticated, feature rich, and very expensive/complex. Additionally, much of the functionality in these products is outside of the JEE specifications, thus making each of them proprietary to some degree and particularly so in the areas of administration. Other JEE application servers, such as jBoss, SUN, and Geronimo, also meet the minimum of the JEE standard, but provide a much less broad suite of application services and some are notably lacking in operations/management tooling.

JEE Application Servers are widely used (some studies show over 80-90%) for the development of web and web services applications. In these, the application server’s services act as a set of components accessible to the software developer through an API. The services/components are usually executed in the same machine where the web server is running, and their main job is to support the construction of dynamic pages and deliver rich GUI, although increasingly service oriented architectures are being utilized to partition the business logic across multiple instances of lighter weight servers, frequently isolating web page creation from the underlying business logic.

Without doubt, the most widely utilized Java application server is Apache Tomcat (yes, Tomcat is an “application server”), which for many years was the reference implementation of the Java servlet specification, till SUN pulled it back. While Tomcat doesn’t offer all of the services of a commercial JEE Application Server, it includes the most commonly used services and it supports “plug-ins” and “add-ons” to enable enhancing Tomcat with specific services required by your application. The benefit of Tomcat’s architecture is that you use what you need, and leave out what you don’t. jBoss also was a lean and mean architecture originally, with the ability to leave out what you didn’t want, but sadly under RedHat it’s adopted the “mega-blob” approach of the other JEE vendors and it has become increasingly difficult to separate services from the blob.

The Apache Tomcat community continues to develop and support Tomcat, with regular releases that add sophisticated functionality, and improve security/stability, while maintaining 100% standard compliance and high reliability/performance. The Tomcat community has done a very good job of maintaining the focus, thus far avoiding the tendency to create a “mega-blob” application server like the commercial vendors did. It will be interesting to see what happens to Tomcat as multiple vendors start to create and deliver commercialized versions of Tomcat. Hopefully the community will retain their focus…they have done a good job so far, even while Tomcat became embedded in many commercial products, including several JEE Application Servers.

So, what are the quick answers to the FAQ I posed earlier?

What’s an Application Server? An Application Server provides services and infrastructure for developing, deploying, and running applications. There are many different application servers available today and, with sophisticated application frameworks, the line between the IDE and the Application Server is blurring. JEE servers are still widely used, while Tomcat and various JAVA frameworks are being adopted for many (most!) new applications and architectures.

Isn’t Tomcat an Application Server? Yes, it is, and many of today’s applications (and virtually all “web services”) can be built on top of Tomcat with pluggable services and add-ons. Aside from administration, Tomcat is often a much better choice, both technically and for TCO, to build today’s development and deployment architectures than yesterday’s “mega-blob” JEE servers. By adding administrative services, available from vendors like VMware (Spring), MuleSoft, etc, IT operations requirements can also be met…sometimes better than by the JEE vendors.

Do I really need an application server? No you don’t, but you almost certainly want one unless you are programming for a “device” (router, cell phone, PDA, etc) or you have a professional death wish. This is because most of today’s applications need a range of services and it’s very very costly and very very time consuming to re-invent these services each time. The more important question should be “which Application Server best meets the requirements of my application?”

In many (perhaps most) situations, the answer is likely to be Tomcat ++, where the ++ is some combination of the required plug-in/add-on services and a commercial management framework. You can do without, and/or do it yourself, but the advantages of leveraging sophisticated components which are available at bargain costs generally outweigh other considerations.

Author's note: As readers of my blogs already know, I’m NOT a big fan of the major commercial JEE Application Servers for most applications, even after using (and developing one of) them for many years. I believe that both JEE and JEE Application Servers started out as a wonderful vision, but lost their way as they evolved into mega-blobs that try to do everything for everybody. So, take this post with a grain of salt, depending on your particular prejudices and/or situation.

Andy has recently decided to make the jump from individual consulting to join the Spring Source team. He will continue to be working with major clients to assist them with IT architecture evolution, now as a member of a large and growing organization. His first project will be leveraging Tomcat, Spring, and a Tomcat based data grid/cache called GemFire. He’s looking forward to sharing the lessons learned with the tomcatexpert community. Andy has been architecting, designing, and building enterprise infrastructure and applications software for most of his career. He’s been responsible for BEA’s “Blended Source” initiative, combining the best of Open Source (including both Tomcat and Spring) with WebLogic, BEA’s WebLogic Enterprise Security product family, MEI Software’s financial systems, Netegrity’s SiteMinder security product, Camex’s electronic publishing systems, mainframe applications for Bell Telephone, and many others. During that time his hands on technology experience has ranged from octal coding into neon lighted switches all the way through JAVA and beyond, including many generations of “the best and final thing we will ever need”, and he looks forward to working on the even better things coming in the future. He was involved in the early days of Open Source software as a contributor to EMACS and refocused on Open Source during his tenure as Director of Product Management with BEA Systems, combined with a fascination for the rapidly evolving application deployment architectures and technologies driving today’s development. Andy has provided architecture and technology guidance for both vendors and IT organizations and he shares what he is learning through consulting services and through his web site, Enterprise Software Trends (


Nice one!

This kind of post is always good to read, to clarify ours thoughts about App Servers.

I had this kind of discussion in my office, at take ours to us to get in a conclusion. Windows App Server, as Microsoft called, is always in ours discussion if IIS is an App Server or "IIS + COM" is the App Server or if only the hole Windows Server is the App Server.

Congrats for your post,

Willian Leite

Willian Leite



Thank you very much for writing such an interesting article on this topic. This has really made me think and I hope to read more.
top health blogs


You have a good point here!I totally agree with what you have said!!Thanks for sharing your views...hope more people will read this article!!!


The information you have posted is very useful. The sites you have referred was good. Thanks for sharing...
how to improve website ranking


I found this is an informative and interesting post so i think so it is very useful and knowledgeable. I would like to thank you for the efforts you have made in writing this article.
Dissertation Topics

Much obliged for your

Much obliged for your understanding for your phenomenal posting. I'm happy I have set aside an ideal opportunity to see this. fitness tips

live streaming manchester united

This is a good post. This post gives truly quality information. I’m definitely going to look into it. Really very useful tips are provided here. Thank you so much. Keep up the good works. live streaming manchester united


Tempat sewa mobil di malang banyak tersedia dan lokasinya berada di berbagai sudut-sudut kota malang batu. Rental mobil di malang ini bisa anda booking dengan mudah melalui nomor telepon yang sudah disediakan. Paket sewa mobil malang yang paling sering dipesan oleh penyewa adalah paket sewa mobil, sopir dan bbm. Nantinya anda tinggal mengeluarkan biaya parkir dan makan sopir saja selama perjalanan. Sewa mobil di malang booking mudah rental mobil malang.
Jasa penyewaan mobil di kota surabaya bisa anda gunakan untuk acara keluarga. Biasanya jasa sewa ini dibutuhkan oleh para pendatang yang sedang berkunjung ke kota surabaya untuk keperluan tertentu seperti acara wisuda. Anda bersama keluarga bisa pesan jauh-jauh hari sebelum acara wisuda tersebut agar tidak kehabisan stock mobil. Cara pemesanan jasa transportasi sewa mobil di surabaya sangat mudah dan gampang. Sewa mobil surabaya untuk wisuda sewa mobil di surabaya.
Menimati pemandangan alam nan hijau adalah salah satu cara untuk menghilangkan stress karena setiap hari selalu berkutat dengan urusan kerja di kantor. Salah satu tempat yang wajib anda kunjungi adalah wisata kebun teh wonosari lawang malang. Hamparan luas perkebunan teh disana sangat menyejukkan mata dan anda bisa bercengkrama dengan pemetik teh yang setiap berlalu-lalang memetik tunas-tunas teh yang baru tumbuh. Jalur wisata kebuh teh lawang ini sudah sangat nyaman karena sudah beraspal dengan baik.


I do like the automatic closure feature that prevents the top half from slamming shut after accessing the print cartridges. Overall, for the money it has good print quality and will fill my needs. Sure wish it was quieter and faster. readmore This is, by far, the best all-in-one you can get for this low price! The print quality is amazing, the scanner and fax quality is amazing.... i would say the only thing i dont like about this printer (which could be fixed by a software update) readmore is that not only does it have to warm up when you print, but even if you just printed it will still warm up before it prints.... They should do a software update to put a warm up delay for at least 1 minute after the previous print job readmore but this is the only thing i dont like about the printer... the scanner software is easy to use and high quality and lets you save the documents as either a jpeg or pdf, which is great for emailing documents readmore its really easy to setup the Wi-Fi and i havent had a single problem, which is surprising after my last wifi printer! Its really easy to fax too, which is surprising because it never is, plus it listens for incoming . readmore faxes and even if you pick up the phone, if you hang up it will still receive the fax... i really like this all-in-one and really suggest buying one! If you are reading this you are obviously interested in buying it, so do it

im fine

Interesting and amazing how

Interesting and amazing how your post is! It Is Useful and helpful for me That I like it very much, and I am looking forward to Hearing from your next..

it was a wonderful chance to

it was a wonderful chance to visit this kind of site and I am happy to know. thank you so much for giving us a chance to have this opportunity..
SEO Salt Lake City

You have a real ability for

You have a real ability for writing unique content. I like how you think and the way you represent your views in this article. I agree with your way of thinking. Thank you for sharing.
men's grooming salt lake city ut

Nice to be visiting your blog

Nice to be visiting your blog again, it has been months for me. Well this article that i’ve been waited for so long. I need this article to complete my assignment in the college, and it has same topic with your article. Thanks, great share.
best laptop for producing music

I admire what you have done

I admire what you have done here. I like the part where you say you are doing this to give back but I would assume by all the comments that this is working for you as well.
cheap gaming laptop

Buy ESO Items Cheap

This site always share many important topics related to the Apache Tomcat. I had doubt about scaling the Apache tomcat in the cloud. But from this blog I understood how it is done in the servers like Rabbit MQ and JMX.Buy ESO Items Cheap

the original source

I really be interested in such type of blog post because it's full of entertainment that he's specking with you and getting enjoyment with his baby, parrots and dog. It's good method and you can take more from british essay writers who always offering best material. Keep it up! the original source

I've been searching for this

I've been searching for this for a week now, followed your suggestions and everything worked fine!

Thanks again!

Its a great pleasure reading

Its a great pleasure reading your post.Its full of information I am looking for and I love to post a comment that "The content of your post is awesome" Great work

Alachua County lawn care

Very nice article, I enjoyed reading your post, very nice share, I want to twit this to my followers. Thanks! Alachua County lawn care

You have a decent point

You have a decent point here!I absolutely concur with what you have said!!Thanks for sharing your views...hope more individuals will read this article!!! health

seo tools

It’s appropriate time to make some plans for the future and it is time to be happy. I have read this post and if I could I wish to suggest you few interesting things or advice. Perhaps you could write next articles referring to this article. I desire to read even more things about it! seo tools

Very good points you wrote

Very good points you wrote here..Great stuff...I think you've made some truly interesting points.Keep up the good work.
Movers in calgary

I’ve been searching for some

I’ve been searching for some decent stuff on the subject and haven't had any luck up until this point, You just got a new biggest fan!..
o que fazer em miami

Superbly written article, if

Superbly written article, if only all bloggers offered the same content as you, the internet would be a far better place..
casas em miami

I really loved reading your

I really loved reading your blog. It was very well authored and easy to undertand. Unlike additional blogs I have read which are really not tht good. I also found your posts very interesting. In fact after reading, I had to go show it to my friend and he ejoyed it as well!
how to get an ein

I really enjoyed reading this

I really enjoyed reading this post, big fan. Keep up the good work and please tell me when can you publish more articles or where can I read more on the subject?
I really enjoyed reading this post, big fan. Keep up the good work and please tell me when can you publish more articles or where can I read more on the subject?

Very nice article, I enjoyed

Very nice article, I enjoyed reading your post, very nice share, I want to twit this to my followers. Thanks!.
restaurants near me

Thank you again for all the

Thank you again for all the knowledge you distribute,Good post. I was very interested in the article, it's quite inspiring I should admit. I like visiting you site since I always come across interesting articles like this one.Great Job, I greatly appreciate that.Do Keep sharing! Regards,
progressive lawn maintenance

I really appreciate this

I really appreciate this wonderful post that you have provided for us. I assure this would be beneficial for most of the people.
i thought about this

Nice blog and absolutely

Nice blog and absolutely outstanding. You can do something much better but i still say this perfect.Keep trying for the best.
The Other World

I am no expert, but I believe

I am no expert, but I believe you just made an excellent point. You certainly fully understand what you are speaking about, and I can truly get behind that.
tattoo shop

This is a brilliant blog! I'm

This is a brilliant blog! I'm very happy with the comments!..
tattoo artist

The explanation behind

The explanation behind utilizing just the Strats made inside this four year time frame is the way that Fender conveyed them with a bigger headstock. Malmsteen is persuaded that this bigger headstock decidedly influences the maintain of the guitar. All things considered, the majority of his Stratocasters are intensely changed. These alterations incorporate minor things, for example, supplanting the springs on the tremolo connect with Wilkinson ones, to totally changing over the neck and scalloping the fretboard. Diverse pickups are a standard for the majority of his Strats. Indeed, even with the majority of the adjustments, Fender has chosen to make a Malmsteen signature display, which is just the second mark arrangement they made after Clapton's. Yngwie Malmsteen Stratocaster accompanies a large portion of the mods found on any of Yngwie's own Strats, with the consideration of Seymour Duncan YJM Fury pickups.
dimebag darrell rig rundown

Thank you for some other

Thank you for some other informative blog. Where else could I get that type of information written in such an ideal means? I have a mission that I’m just now working on, and I have been at the look out for such information.
what is a short sale

This is a great post. I like

This is a great post. I like this topic.This site has lots of advantage.I found many interesting things from this site. It helps me in many ways.Thanks for posting this again.
short sale process

Well this article that i've

Well this article that i've been waited for so long. I need this article to complete my assignment in the college..
forex traders


I can see that you are an expert at your field! I am launching a website soon, and your information will be very useful for me.. Thanks for all your help and wishing you all the success in your business.
Murray Utah SEO Audit

This is such a great resource

This is such a great resource that you are providing and you give it away for free.
cheap gaming laptop under 300

this oneweek diet

your post gave me a new perspective this oneweek diet! I have read many other articles about the same topic, but your article convinced me!

TN PC Result 2018

I found your this post while searching for some related information on blog search…Its a good post..keep posting and update the information. TN PC Result 2018

have a peek at this web-site

i am for the first time here. I found this board and I in finding It truly helpful & it helped me out a lot. I hope to present something back and help others such as you helped me. have a peek at this web-site

Thank you for helping people

Thank you for helping people get the information they need. Great stuff as usual. Keep up the great work !!lawn mowing


This article gives the light in which we can observe the reality. This is very nice one and gives indepth information. Thanks for this nice article.
online marketing company


Thank you for such a well written article. It’s full of insightful information and entertaining descriptions. Your point of view is the best among many.
Packaging Supplies


I have recently started a blog, the info you provide on this site has helped me greatly. Thanks for all of your time & work.
buy instagram likes

Thanks for the nice blog. It

Thanks for the nice blog. It was very useful for me. I'm happy I found this blog. Thank you for sharing with us,I too always learn something new from your post.
Manufactured Home Lenders

Positive site, where did u

Positive site, where did u come up with the information on this posting? I'm pleased I discovered it though, ill be checking back soon to find out what additional posts you include.
Buy Followers on Twitter

Thanks for the nice blog. It

Thanks for the nice blog. It was very useful for me. I'm happy I found this blog. Thank you for sharing with us,I too always learn something new from your post.
pheromone perfume


I just found this blog and have high hopes for it to continue. Keep up the great work, its hard to find good ones. I have added to my favorites. Thank You.
trust flow backlinks

I was looking at some of your

I was looking at some of your posts on this website and I conceive this web site is really instructive! Keep putting up..
miami seo

Post new comment

This question is for testing whether you are a human visitor and to prevent automated spam submissions.