Existem algumas maneiras pelas quais o failover é feito. (provavelmente mais, mas estes são os principais e os que usei):
-
Sistema em cluster com um IP flutuante; isso funciona bem para conteúdo estático, pois não há ID de sessão; em teoria, o servidor subutilizado deve responder primeiro a um pedido, e todos compartilham um IP.
-
Um nó do balanceador de carga do proxy. Isso pode ser um software como o apache, enviando usuários para um conjunto específico de servidores; ele pode ser configurado para ter regras baseadas em sessão para sempre enviar uma sessão / ip / etc específica para o mesmo servidor, de modo que os sites baseados em sessão funcionem
-
Um balanceador de carga de hardware (como os que o f5 cria). Você pode fazer um nó entrar e sair de um pool e especificar uma porta para a qual todo o tráfego será enviado para um pool específico de servidores. Isso pode funcionar com qualquer tipo de tráfego IP e, com isso e com um balanceador de carga mais baseado em software, você pode ter nós redundantes e um IP flutuante entre os balanceadores de carga ou um tipo de configuração ativo / em espera.
Dependendo de como ela é configurada, a diferença entre um balanceador de carga de software e hardware será essencialmente como ela é configurada e em que é executada. isto é, comparar um roteador físico como um roteador Cisco de nível residencial ou empresarial, ou usar uma máquina x86 comum com vários NICs e IPtables / DNSMasq no linux.