(Postar uma resposta em vez de um comentário, pois pode ser muito longo):
Não estou dizendo "A F5 pode lidar com o problema de uma maneira melhor ", mas:
- Eu preferiria fazer a tarefa de balanceamento de carga por balanceadores de carga: F5 big ip, entre outros produtos, onde foi projetado para fazer esse trabalho.
- Como você tem uma configuração pequena (4 tomcat), não vejo razão para ter 2 níveis de balanceamento de carga. Ter apenas a F5 verificando se uma página jsp personalizada retorna 200 é muito mais simples.
- A pior desvantagem de que me lembro é: quando um nó está inativo, algum tráfego ainda é direcionado a ele até a próxima verificação de integridade (~ 5 seg por padrão iirc). A sessão é perdida se um nó estiver inativo (talvez o tomcat ofereça a capacidade de ter uma solução alternativa, por exemplo, sessão no banco de dados ...).
Não acho fácil encontrar benchmarking / teste "neutro" sobre o melhor equipamento / software para balanceamento de carga. Eu só posso aconselhá-lo a fazer o seu próprio se você tiver reposição f5 para stagging.
Como regra geral, eu faria o f5 fazer o máximo possível: Balanceamento de carga, certificados ssl, reescrita de url, asm, ... Não porque o f5 seja melhor, mas porque é conveniente ter tudo no mesmo Lugar, colocar. Infelizmente, quando o tráfego http começa a crescer em algumas centenas de MB, você precisa começar a fazer algum trabalho pelo apache em vez de f5.