A Server is some kind of computer program which runs on a computer and provides different services to the client. A server listens for requests from the client on a specific port. There are several different kinds of server like Mail Server, FTP Server, Web Server, Application Server, Media Server etc, a good list of servers and their explanation can be found on this link.
Here, I am going to describe difference between two main kinds of servers commonly used, Web Server and Application Server.
|Web Server is a computer program designed for serving HTTP Content||Application Server is a computer program which is designed to server HTTP Content, and also provides supports for other protocols like RPC/ RMI etc.|
|Web Server is mostly designed to server static content, but is also provides support for some scripting languages. After all, every response is in HTML format which all the browser understands||Application Server is designed to host Enterprise Application Services. It has web server included in them, so they can also serve HTTP Content. In addition, it provides other services like Connection pooling, Messaging services, transaction support etc.|
|It can be used for servlet, jsp, struts, jsf etc. It does not supports EJB.||It can be used for servlet, jsp, struts, jsf, ejb and other Java EE support like connection pooling, Messaging Services, etc.|
|It utilizes less resources as compared to Application Server||It utilizes more resources as compared to Web Server|
|It has a servlet container||It has a servlet & EJB Container|
|The request processing does not involve middleware||The request processing does involve connection to middleware like other connecting to other dependent application using EJB etc. for generating the response.|
|It has a limited capacity when it comes to handling concurrent requests as compared to Application Server.||It can handle more concurrent requests from the same IP as compared to the Web Server.|
|We can only deploy war files in this kind of server.||We can deploy both the war and ear files in this server.|
|For e.g. Apache Tomcat||For e.g. Wildfly|