File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Web Services and the fly likes Diff b/w Webserver & ApplicationServer Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Web Services
Bookmark "Diff b/w Webserver & ApplicationServer" Watch "Diff b/w Webserver & ApplicationServer" New topic

Diff b/w Webserver & ApplicationServer

Bubesh Sankar

Joined: Nov 12, 2006
Posts: 6
hi friends,

Can you please let me know the diff. .......
tanu dua
Ranch Hand

Joined: Apr 05, 2004
Posts: 145
web Server is meant for handling JSP,Servlets,HTML pages etc while Application Servers handles the business logic like EJBs.It takes into account all the security , performance etc of the beans.

If you see the architecture of a j2ee application it has the view and the business logic , so to sepatrate them web servers and application servers come into picture.

WebServer : To handle view
Application Server : To handle business logic.
Cameron Wallace McKenzie
author and cow tipper
Saloon Keeper

Joined: Aug 26, 2006
Posts: 4968

When I think of a web server and an application server, I think of Apache as a web server, and JBoss or WebSphere as teh application server.

The web server simply servers up files. You as a web server for an HTML file or mp3 file, it can server it to you. Web servers simply map request to files, without implementing any logic. Of course, sometimes you see PHP or CGI scripts run on a web server, but that's all artificial intelligence stuff. Web servers are really about as intelligent as a male model.

For logic, or real intelligent processing, an application server is needed. JBoss, WebSPhere, WebLogic and the like are all application servers, not web server. These are J2EE based application servers, and are responsible for running JSPs, Servlets, and EJBs. In my definition, JSPs and Servlets can not run on a web server.

Here's a little snippet from an article I wrote on Java at runtime.

When dealing with web based requests, before tunneling through to our application server, a client will always hit a web server first. The J2EE application server does not replace the need for a web server. A web server remains as pivotal a part of the J2EE architecture as ever.

Web servers are great at doing one thing: serving up files. A web server takes requests from clients, maps that request to a file on the file system, and then sends that file back to the client.

If you want an html file, a web server can efficiently and reliably find that file and send it back to you. If you need an image, a web server can serve it up to you as well. You want to download a zip file or a pdf file quickly and efficiently? A web server can make that happen.

Unfortunately though, your web server is about as intelligent as a male model. A web server can serve up static files until the cows come home, but ask your web server to add �one plus one� and you�ll be waiting there for a very, very long time.

If our applications use any images, HTML, pdf or zip files, we like to keep all of those static files on the web server. If we need some logic or dynamic content in our applications, we will delegate to our Servlets, JSPs, EJBs and JavaBeans that are running on our Application Server.

Now here is the dilemma. Our application server contains all of our Servlets and JSPs, but all of the requests go through the web server, and the web server, not being a very clever machine, tries to handle all requests, regardless of whether the request is for an image, html file, or to our detriment, a Servlet or a JSP....


-Cameron McKenzie

[ November 12, 2006: Message edited by: Cameron W. McKenzie ]
[ November 12, 2006: Message edited by: Cameron W. McKenzie ]
Peer Reynders

Joined: Aug 19, 2005
Posts: 2933
Difference between Application Server and Web Server
I agree. Here's the link:
subject: Diff b/w Webserver & ApplicationServer
It's not a secret anymore!