Artigo Java Magazine 08 - O melhor dos mundos

Conheça as configurações básicas e avançadas para a integração do Servidor HTTP Apache com o Tomcat, utilizando o JK2.

Esse artigo faz parte da revista Java Magazine edição 08. Clique aqui para ler todos os artigos desta edição

Clique aqui para ler esse artigo em PDF.,

O melhor de dois mundos

Configurações básicas e avançadas para a integração do Servidor HTTP Apache com o Tomcat, utilizando o JK2

A popularidade do Servidor HTTP Apache é indiscutível. Segundo uma pesquisa da Netcraft, de 2003, mais de 63% dos websites são servidos por ele. O Apache é um servidor web rápido e maduro que se sobressai ao servir conteúdo estático, tais como páginas HTML e imagens, e em muitas outras áreas, como em mecanismos de autenticação, segurança via SSL e certificados, estabilidade, suporte a domínios virtuais e in­tegração com outras ferramentas.

Por outro lado, o container web Tomcat é ex­celente para servir páginas dinâmicas basea­das em JSP e servlets, além de, claro, ser capaz de servir páginas estáticas. Como sabemos, o Tomcat é a implementação de referência do container para as tecnologias de servlets e JavaServer Pages. Pode operar como um ser­vidor web independente, ou atuar como um container out-of-process para outros servidores web como o Apache ou o IIS.

Apesar de fornecer uma solução completa para JSPs e servlets, o Tomcat não pode ser considerado ideal como servidor web em um ambiente de produção. Primeiro,  não é tão rápido ao servir páginas estáticas; segundo, é pouco configurável com relação a tipos de arquivos suportados ou domínios virtuais; finalmente, existem muitas empresas com grandes investimentos baseados em outras tecnologias web – por exemplo CGI, Perl, PHP – não suportadas pelo Tomcat, mas incorporadas ao Apache há anos.

Para construir aplicações web rápidas e escaláveis, os requisitos para um ambiente de produção robusto apontam para um ser­vidor Apache que delega requisições a JSPs e servlets para um ou mais containers Tomcat. Isso pode ser feito utilizando um módulo de comunicação entre as duas partes – um co­nector, que é composto por um componente escrito em Java e outro em código nativo (geralmente em C/C++). O primeiro faz a comunicação do lado do Tomcat, recebendo as requisições provenientes do segundo, que se encontra no Apache.

 

Figura 1. Arquitetura proposta

Conectores JTC

Os conectores do subprojeto JTC (jakarta-tomcat-connectors) são pequenos módulos que fazem a comunicação entre o Apache e o Tomcat, ou entre o Tomcat e qualquer ou­tro servidor web. Conheça um pouco mais sobre os principais conectores oferecidos pelo Tomcat:

• mod_jserv – foi o primeiro conector a surgir, originando o protocolo AJP (Apache JServ Protocol). Atualmente está obsoleto e não é mais utilizado. Um detalhe: “JServ” é o nome de um antigo projeto de container web da Apache Foundation, descontinuado em favor do Tomcat;

• webapp (mod_webapp) – originado do mod_jserv, se comunica com o servidor web através do protocolo WARP, bastante utili­zado, devido à sua simplicidade e por usar um protocolo mais leve. É baseado no APR (Apache Portable Runtime), uma biblioteca escrita em C que constitui uma camada de portabilidade para comunicação, mas que é disponível apenas para o Apache, não supor­tando outros servidores web;" [...] continue lendo...

Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados