Armazene dados de sessão HTTP com o Spring Session

Concluído

Nesta unidade, saiba como usar o Cache Redis do Azure para armazenar dados de sessão HTTP por meio do Spring Session.

Sessões HTTP

As sessões HTTP armazenam dados do usuário, normalmente informações de segurança, entre solicitações. As sessões HTTP também podem armazenar o estado do aplicativo ou armazenar em cache dados do usuário acessados com frequência. Como as sessões HTTP são armazenadas no servidor, elas podem apresentar um problema de escalabilidade. Você precisa replicar as sessões quando seu aplicativo é expandido para mais nós.

As sessões HTTP estão disponíveis em Java desde os primórdios dos servlets, e tecnologias como JavaServer Faces (JSF) as usam muito. O dimensionamento de sessões HTTP sempre foi um problema, e existem mecanismos de replicação de sessão em todos os principais servidores de aplicativos Java.

Um problema é que os mecanismos de replicação de sessão HTTP não são padronizados, mas dependem de APIs específicas para cada servidor de aplicativos. Esta configuração pode causar problemas de portabilidade.

Sessão da primavera

Spring Session é um subprojeto Spring que fornece uma solução genérica para configurar a replicação de sessão HTTP. O Spring Session suporta Redis como uma das várias opções de back-end. O Spring Session replica todos os dados da sessão no Redis, portanto, quando o aplicativo é dimensionado, cada nó tem acesso às sessões do usuário.

A configuração do Spring Session é semelhante à configuração anterior do Spring Data e ilustra outro cenário de uso recomendado do Redis.

Usar a Sessão de primavera com Redis

Algumas das configurações são as mesmas do Spring Data Redis, e você precisa fazê-lo apenas uma vez para ambas as soluções. Como na configuração do Spring Data, você normalmente usa o Spring Initializr e executa as seguintes tarefas principais:

  1. Adicione a biblioteca Redis do Spring Session ao seu aplicativo.
  2. Configure seu arquivo application.yml para se conectar à sua instância do Cache do Azure para Redis.
  3. Use o mecanismo de sessão HTTP do Java para armazenar e recuperar dados.

Prossiga para a próxima unidade para implementar essa configuração.