Cuidado: a maioria dos processos apache compartilha a maior parte de sua memória com seus pais / irmãos. Você não pode facilmente somar os valores da memória alocada dos processos do apache. O melhor que você pode fazer: você inicia muitos processos do apache e verifica como isso muda sua memória alocada.
1: StartServers tem apenas uma importância limitada. Isso significa quantos processos filhos serão iniciados inicialmente. Min / MaxSpareServers são muito mais importantes.
2: Não consigo entender, você não disse nada sobre sua solução de balanceamento de carga. Se você quer ser capaz de lidar com alto tráfego, sua melhor opção era usar um apache de trabalho (ou até mesmo outro tipo de servidor http) para servir arquivos estáticos, e um baseado em prefork (eu sugiro que você mpm-itk) para dinâmico línguas (provavelmente para php). O trabalhador deve encaminhar as solicitações dinâmicas para o servidor baseado em prefork. Essa estrutura também é capaz de ser facilmente estendida para uma solução de cluster com balanceamento de carga.
3: MayRequestPerChild == 0 significa que os processos nunca serão reiniciados. Assim, se houver um problema com eles, eles nunca foram consertados, ou se estão vazando, isso também não será resolvido. Pode ficar tudo bem se o seu sistema é estável em termos de rock, e você está usando apenas idiomas perfeitos coletados no lado do servidor (php não é um deles!), mas acho que, por razões práticas, é melhor usar um valor inteiro grande (na maioria dos casos eu uso 100 ou 500). Cuidado: uma simples reinicialização do processo filho não é realmente cara se comparada ao seu processamento de 100 a 500 pedidos.