HAProxy e SSL:
O suporte SSL diretamente no HAProxy é muito recente (ainda no Dev, tornado público há cerca de uma semana), portanto, dependendo da sua linha do tempo, você precisará de algo como stunnel ou nginx para descarregar o SSL. Se não se importar de tentar algo novo, aqui está um howto .
TPS, simultaneidade e taxa de transferência :
O principal fator aqui provavelmente será transações por segundo (TPS). Então, para prever sua carga, você precisará obter esse número de alguma forma. Muito provavelmente você desejará analisar seus registros da web. Concorrência será realmente uma função de quanto tempo você mantém as sessões abertas. Se você mantê-los abertos por um tempo, a resposta pode parecer mais rápida porque você não precisa continuar refazendo a criação de sessões (é demorado e caro quando se trata de SSL). No entanto, você não quer manter as coisas abertas por tanto tempo que você usa um monte de memória.
Estimando a capacidade com o HAProxy:
Quando se trata de desempenho da memória, a documentação do HAProxy fornece algumas orientações:
Also, keep in mind that a connection contains two buffers of 8kB each, as well as some other data resulting in about 17 kB of RAM being consumed per established connection. That means that a medium system equipped with 1GB of RAM can withstand around 40000-50000 concurrent connections if properly tuned.
Com SSL, a maior parte do trabalho da CPU ocorrerá durante a fase de handshake, se o que você está usando para processar SSL puder armazenar em cache as chaves geradas, você poderá economizar bastante CPU. Consulte este artigo para obter mais detalhes sobre isso.
Você também pode usar esta pessoa de referência para ter uma ideia como linha de base também.
Você precisa fazer um benchmark para ter certeza:
No final, você terá que fazer um benchmark para ter certeza, aqui é uma referência para você começar. Minha impressão pessoal é de que, a 4 Mbps, você provavelmente ficará bem.