The most widely asked question in Java interview is what is the difference between an application server and a web server?
Web server: A web server is nothing but a container which provides an
environment in which a web application can be deployed. Web server serves the
static contents and supports HTTP protocol.
Web server does not offer supports for connection pooling,
integrity management, security by itself. Web servers just provide an
environment to execute server side application, whenever a request arrive a web
server give away it to the program which can best handle the request, the
program serves the request and send off the response to server mostly in form
of HTML pages, image (static content).
Web servers allows only Http request and are suitable for small
and medium scale applications.
Example of web servers:
TOMCAT
|
Apache
|
Open source
|
JETTY
|
ECLIPSE FOUNDATION
|
Commercial
|
Application server: An application server on the other hand provides additional facilities
along with all other facilities provided by web server, it provides support for
connection pooling; also provides support for both HTTP and non-HTTP request,
if an application uses business logic an application
server is required.
Most of application server itself contains web server. Application
servers provide support for EJB (enterprise java bean), and are based upon
SERVLET, JSP,EJB, JMS etc. specification, provides more middle ware
services in compare to web servers, and are very suitable for large scale
applications.
List of application
servers:
WebLogic Application Server
|
Oracle corporation
|
Commercial
|
WebSphere Application Server
|
IBM
|
Commercial
|
JBOSS
|
Redhat
|
Open source
|
Oracle corporation
|
Open source
|
|
Resin Java Application
Server
|
Caucho Technology
|
Open source
|
No comments:
Post a Comment