Tenho experimentado tempos de expiração aleatórios de cache para evitar situações em que uma solicitação individual força várias coisas a serem atualizadas de uma só vez. Por exemplo, uma página da web pode incluir cinco componentes diferentes. Se cada um estiver definido para atingir o tempo limite em 30 minutos, o usuário terá um longo tempo de espera a cada 30 minutos. Então, em vez disso, você define todos eles para um tempo aleatório entre 15 e 45 minutos para tornar provável que no máximo apenas um componente seja recarregado para qualquer carregamento de página.
Estou tentando encontrar alguma pesquisa ou diretrizes sobre esse tópico, por exemplo, parâmetros de variação ideais. Lembro-me de ver um artigo sobre como o Google (?) Usa essa técnica, mas não é possível localizá-la, e não parece haver muita coisa escrita sobre o assunto.