Sim, você pode resolver todos esses problemas e muito mais com o uso de um armazenamento de sessão centralizado. Sem conhecer o seu aplicativo, é impossível apontar um guia definitivo para implementá-lo (e seria uma pergunta do Stack Overflow), mas geralmente é tão simples quanto definir uma opção (em frameworks como Rails) para escrever algumas linhas. de código de cola que é chamado pela estrutura da Web e que se conecta à loja para armazenar os detalhes ou recuperá-los.
Quanto ao que usar, recomendo o Redis. Embora o memcached pareça fazer o truque, ele tem a desvantagem desagradável de exigir que os usuários efetuem login novamente sempre que você precisar reiniciar suas instâncias do memcached. Uma boa regra a seguir em sistemas redundantes é que nenhuma alteração na sua infraestrutura deve mostrar qualquer sintomas visíveis ao usuário. O Redis, por outro lado, persiste no disco, é incrivelmente rápido tanto na atualização quanto na recuperação, e tem se mostrado incrivelmente robusto nas situações de grande escala em que eu o usei.