Servlet container, Web container e Web Server

Olá pessoal.

Será que alguém poderia definir claramente e exemplificar o que é afinal de contas :

  • Servlet container
  • Web container
  • Web server ?

Desde já agradeço a quem puder me ajudar a distinguir claramente estes termos.

Servlet container = Web Container: Em Java EE, o container contém os componentes construídos como Servlets (container para aplicações Web) ou EJBs (container para componentes de negócio). Um exemplo de container para Web é o Tomcat. Quando uma aplicação web faz uma solicitação para um Servlet, o servidor não entrega a solicitação diretamente ao Servlet, mas sim para o container que contém o Servlet. O container gerencia o ciclo de vida, dá suporte ao multithread, segurança, e suporte para páginas JSP.

Web server ou app server: servidor de aplicação ou em inglês, application server, é um software que disponibiliza um ambiente para a instalação e execução de certas aplicações. Os servidores de aplicação também são conhecidos como software de middleware.

O objetivo do servidor de aplicações é disponibilizar uma plataforma, que abstraia do desenvolvedor de software algumas das complexidades de um sistema computacional. No desenvolvimento de aplicações comerciais, por exemplo, o foco dos desenvolvedores deve ser a resolução de problemas relacionados ao negócio da empresa, e não de questões de infraestrutura da aplicação. O servidor de aplicações responde a algumas questões comuns à todas as aplicações, como segurança, garantia de disponibilidade, balanceamento de carga e tratamento de exceções.

Fonte: Wikipedia
Links: :arrow: http://pt.wikipedia.org/wiki/Container_(programação)
:arrow: http://pt.wikipedia.org/wiki/Servidor_de_aplicação