Já foi mencionado nos artigos vinculados por outros, mas vale a pena repetir separadamente: o Memcache é uma opção muito útil aqui. É incrivelmente rápido, escalável para múltiplos servidores / instâncias Memcache, fácil e muito fácil de implementar sem muita sobrecarga ou carregamento no banco de dados. Eu implementei isso com o mínimo de esforço em um site com milhões de acessos por dia e ele deu muito mais espaço para crescimento no hardware existente.
Isso também permite o uso da própria política de envelhecimento do Memcache, em vez de executar o coletor de lixo de sessão do PHP.