O verniz poderá compartilhar objetos nas sessões? Em outras palavras, sua arquitetura é tal que o objeto que está sendo carregado pelo cliente de fluxo de vídeo é /somestream/1h42m0s-1h42m10s/
, em oposição a /somestream/for/joeuser
? Nesse caso, com base no que você está descrevendo, eu pularia os SSDs e iria para uma tonelada de RAM; O verniz realmente não precisa de armazenamento em disco para nada quando configurado com um malloc
pool. Lembre-se de desativar swappiness
. Se, por outro lado, o Verniz estiver apenas passando todas as solicitações para o backend, então, na melhor das hipóteses, tudo o que você está recebendo é alguma proteção contra inundações SYN.
Eu vi o Varnish felizmente empurrando vários gigabits para fora da porta, mas certifique-se de que tudo acima do Varnish também saiba como lidar com esse tipo de tráfego. Alguns firewalls (nomes redigidos para proteger os culpados) mal conseguem lidar com 100 Mbit / s, e muito menos o tipo de tráfego (4Gbit / s) que você está falando se cada uma dessas conexões estiver saturando seu link a 2Mbit / s. Para uma placa de rede, até mesmo uma porta de 10 Gbit integrada provavelmente ficará bem; se você precisar, você também pode fazer coisas bobas com o GigE, mas por que se incomodar? Basta pegar uma porta 10G (ou três) e ligar um dia.
Para o servidor em si, você não precisa de muita CPU, mas maximiza a RAM. Coloque alguns discos rápidos lá, se quiser, mas a única razão pela qual eles estão lá é para o boot. O verniz é um servidor muito, muito magro. Você poderia ir para o cache multi-nível e tentar descarregar vídeos no disco rígido, uma vez que eles rodam fora da memória RAM, mas por quê? Eles já estão em cache no disco em seus servidores de conteúdo; não é como se os discos no servidor do Varnish fossem magicamente melhores. Gastar esse dinheiro em mais RAM ainda. Sério, você não deve bater um olho em 64 ou 96 GB, dado o tipo de largura de banda que você está falando.
Em conselhos não relacionados, se você estiver usando o disco a qualquer momento nesses servidores de streaming, você deve escolher SSDs (ou até mesmo opções mais exóticas como o FusionIO). Para aplicativos de streaming em que você está pulando pelo disco enquanto as pessoas estão transmitindo partes diferentes do mesmo arquivo, os SSDs não são apenas um pouco melhores; eles são, efetivamente, sua única escolha racional.