Servidores de Aplicação
Servidores de Aplicação: Conceito
Servidores de aplicação são plataformas intermediárias entre o usuário (cliente) e os sistemas back-end (bancos de dados, serviços empresariais). Eles gerenciam lógica de negócio, segurança, transações e comunicação em aplicações distribuídas, seguindo modelos como Java EE ou .NET.
Principais Funções
- Gerenciamento de Ciclo de Vida: Controla a execução de aplicações (inicialização, processamento, encerramento).
- Comunicação: Facilita interação entre clientes (web, mobile) e recursos back-end.
- Segurança: Autenticação, autorização e criptografia (ex: JAAS no Java EE).
- Transações: Coordena operações atômicas (ex: JTA - Java Transaction API).
- Escalabilidade: Balanceamento de carga e clusters para alta disponibilidade.
Exemplos de Servidores
- Java EE: WildFly (JBoss), GlassFish, WebLogic (Oracle).
- .NET: IIS (Internet Information Services) com integração ASP.NET.
- Open Source: Apache Tomcat (para aplicações web, mas com limitações em serviços EE).
Diferença para Servidores Web
Servidores web (ex: Apache HTTP Server, Nginx) entregam conteúdo estático e dinâmico (via CGI/plugins), enquanto servidores de aplicação executam lógica complexa, gerenciam componentes EJB, JMS, e outros serviços empresariais.
Termos-Chave para Concursos
- EJB (Enterprise Java Beans): Componentes de negócio em Java EE.
- JNDI (Java Naming and Directory Interface): Serviço de diretório para localizar recursos.
- Deploy: Processo de implantação de aplicações no servidor.
- Container: Ambiente runtime para componentes (ex: container EJB no WildFly).