Prévia do material em texto
1 UNIVERSIDADE VEIGA DE ALMEIDA SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMA AVA1 – DESENVOLVIMENTO DE APLICAÇÕES DISTRIBUÍDAS E WEB II (IL10321) Professor: Marco Aurelio Novaes Esteves Aluno: Paulo Vitor Santos Almeida Matrícula: 1220102618 RIO DE JANEIRO – RJ 2023 https://www.uva.br/ https://www.uva.br/ https://www.uva.br/ https://www.uva.br/ https://www.uva.br/ https://www.uva.br/ 2 Resumo O objetivo do trabalho é determinar, com base em uma tabela fornecida, se a atividade a ser realizada é de responsabilidade do servidor, do container ou de um servlet. Isso envolve a revisão das funções desempenhadas por cada um desses elementos no processo de recebimento de solicitações. Tabela Tarefa Servidor Container Servlet Cria os objetos request e response X Chama o método service ( ) X Inicia uma nova thread para tratar as solicitações X Converte um objeto response em uma response HTTP X Conhece o HTTP X Acrescenta o HTML ao objeto response X Tem uma referência para o objeto response X X Encontra o URLs X Apaga os objetos request e response X Coordena o preparo de conteúdos dinâmicos X X Gerencia os ciclos de vida X 3 Revisão das funções de cada um dos elementos envolvidos no processo de recebimento de requisições: 1. Quando alguém faz uma solicitação a um servidor web, como o Tomcat, o servidor "container" primeiro verifica se a solicitação está destinada a um "servlet". Se for o caso, ele cria dois objetos importantes: o "response" (para enviar uma resposta ao cliente) e o "request" (para receber e processar a solicitação do cliente). 2. Em seguida, o container procura o servlet apropriado com base na solicitação. Ele cria ou aloca uma "thread" (uma espécie de linha de execução) para lidar com essa solicitação e chama o método "service()" do servlet, passando os objetos "request" e "response" como argumentos. 3. O container inicia uma nova thread ou aloca uma thread de um pool (um grupo de threads reutilizáveis) e ativa o método "service" do servlet. 4. O objetivo principal é receber chamadas HTTP, processá-las e enviar uma resposta de volta para o cliente. Quando o processo termina, a thread é encerrada, e o container converte o objeto "response" em uma resposta HTTP que é enviada de volta ao cliente. 5. O Tomcat é um tipo especial de servidor web usado para processar solicitações HTTP. Todos os servidores web, por sua natureza, entendem o protocolo HTTP. 6. Um servlet produz uma página XHTML como resposta. Algumas partes dessa página podem ser estáticas e geradas por simples declarações de saída, enquanto outras partes são criadas dinamicamente quando o servlet é chamado. 7. O container fornece o ambiente necessário para que o servlet seja executado e, por sua vez, o servlet utiliza esse ambiente para gerar a resposta que será enviada ao cliente. 8. O container encontra o servlet correto com base na URL da solicitação que o cliente fez. 9. Quando a solicitação é processada e os objetos de solicitação saem do escopo, o container executa um processo de limpeza de memória, enviando os objetos não utilizados para o "Garbage Collector", responsável por liberar a memória. 4 Referências biográficas: Disponível em: https://www.dca.fee.unicamp.br/cursos/PooJava/Aulas/poojava.pdf. Acesso em 30 de outubro de 2023. Disponível: <https://www.dca.fee.unicamp.br/cursos/PooJava/servlets/ciclo.html>. Acesso em 05 de novembro de 2023. 10. O servidor redireciona a solicitação para o container, que, por sua vez, sabe qual servlet deve ser chamado para lidar com a solicitação. 11. Cada servlet tem seu próprio ciclo de vida, que é gerenciado no contexto do container em que está sendo executado. https://www.dca.fee.unicamp.br/cursos/PooJava/Aulas/poojava.pdf https://www.dca.fee.unicamp.br/cursos/PooJava/servlets/ciclo.html