SóProvas


ID
1309900
Banca
CESPE / CEBRASPE
Órgão
ANTAQ
Ano
2014
Provas
Disciplina
Arquitetura de Software
Assuntos

Julgue o item a seguir, com relação às soluções de integração.


Em arquiteturas REST, nenhum contexto de cliente pode ser mantido em servidor.

Alternativas
Comentários
  • A questão firma-se como correta pois um dos principios do REST é implementar uma conexão sem estado.

  • arquitetura stateless

    • Um protocolo cliente/servidor sem estado: cada mensagem HTTP contém toda a informação necessária para compreender o pedido. Como resultado, nem o cliente e nem o servidor necessitam gravar nenhum estado das comunicações entre mensagens. 
    • Na prática, muitas aplicações baseadas em HTTP utilizam cookies e outros mecanismos para manter o estado da sessão (algumas destas práticas, como a reescrita de URLs, não são permitidas pela regra do REST).

    • No sistema REST, cada recurso é unicamente direcionado através da sua URI.
    • O uso de hipermídia, tanto para a informação da aplicação como para as transições de estado da aplicação: a representação deste estado em um sistema REST são tipicamente HTML ou XML. Como resultado disto, é possível navegar com um recurso REST a muitos outros, simplesmente seguindo ligações sem requerer o uso de registros ou outra infraestrutura adicional.

  • Na Fumpresp veio de forma diferente:

    74 Conexões REST devem conter todas as informações necessárias para que a conexão seja completada.

    Certo, ou seja, não guarda estado!

    Temos que ficar ligados!

     

     

  • Para que os princípios do REST sejam respeitados, um conjunto de restrições deve ser seguido:

    Cliente-Servidor: esta característica é mais comumente encontrada em aplicações Web. Um servidor, com um conjunto de serviços disponíveis, escuta requisições a estes serviços. Um cliente, que deseja que um serviço disponível no servidor seja executado, envia uma requisição para o servidor. O servidor então pode tanto rejeitar como executar o serviço solicitado, e retornar uma resposta ao cliente.

    Stateless (Sem estado): outra restrição imposta pelo estilo REST diz respeito à interação entre cliente e servidor. A comunicação deve ser feita sem o armazenamento de qualquer tipo de estado no servidor, ou seja, cada requisição do cliente para o servidor deve conter todas as informações necessárias para que ela seja entendida. Portanto, estados de sessão, quando necessários, devem ser totalmente mantidos no cliente.

    Cache: uma forma de diminuir o impacto da desvantagem trazida pela redução de desempenho é a utilização de cache. O mesmo exige que os dados de uma resposta, vindos de uma requisição ao servidor, sejam marcados como cacheable ou noncacheable (passíveis ou não de utilização da cache). Se uma resposta é setada como cacheable, então ela será reutilizada como resposta para as futuras requisições equivalentes.

    Interface Uniforme: a característica central que diferencia o estilo arquitetural REST de outros estilos baseados em rede é sua ênfase em uma interface uniforme entre os componentes (cliente, servidor).

    Multicamada: com o intuito de aperfeiçoar o requisito de escalabilidade da Internet, foi adicionado ao estilo REST a característica de divisão em camadas. Sistemas multicamada utilizam camadas para separar diferentes unidades de funcionalidade. A principal desvantagem deste modelo está na adição de overhead e latência nos dados processados, reduzindo a performance. Para um sistema baseado em rede que suporte cache, esta desvantagem pode ser amenizada.   

    Code-On-Demand: o último item do conjunto proposto pelo estilo REST é uma característica opcional. REST permite que clientes tenham a funcionalidade de baixar e executar diretamente código no lado cliente. Deste modo, prima pela simplificação da parte cliente e foca na extensibilidade, em contrapartida, reduz a visibilidade.