|
|
Publicado em 14/06/2020 11:50:26
|
|
|
|

Uso o balanceamento de carga do Alibaba Cloud há mais de 6 anos e uso o nginx há mais de 6 anos.
O balanceamento de carga se baseia em estruturas de rede existentes e oferece uma forma barata, eficaz e transparente de escalar equipamentos de rede e largura de banda de servidores, aumentar a taxa de transferência, aprimorar as capacidades de processamento de dados de rede e aumentar a flexibilidade e disponibilidade da rede. Balanceamento de carga significa que ele é distribuído para múltiplas unidades operacionais, como servidores web, servidores FTP, servidores de aplicações críticas para a empresa e outros servidores críticos para a missão, para completar conjuntamente tarefas de trabalho. Simplificando, ele distribui múltiplas requisições para diferentes servidores no backend para reduzir a pressão sobre cada servidor e alcançar alta disponibilidade, mesmo que um servidor desligue, isso não tem impacto.
Em primeiro lugar
Instalei node.js nativamente e instalei o http-server para emular dois contêineres web. (Use IIS, ou implemente o protocolo HTTP com seu próprio código)
Após instalar node.js, execute o seguinte comando:
Simule dois sites backend
Criei duas novas pastas, site1 e site2, no diretório E:\wwwroot, cada uma com um arquivo index.html.
O conteúdo é: índice 1 by:itsvse.com e índice 2 by:itsvse.com
Depois, ouça as duas portas HTTP com o comando seguinte para abrir os dois sites.
Tente acessar as duas estações separadamente:O login do hiperlink está visível. O login do hiperlink está visível.As renderizações são as seguintes:
Configuração de balanceamento de carga NGINX
Baixe a versão para Windows do nginx no seguinte endereço:O login do hiperlink está visível.
Depois de baixar, extraia-o para o diretório E:\wwwroot\nginx-1.18.0. Modifique o arquivo E:\wwwroot\nginx-1.18.0\conf\nginx.conf da seguinte forma:
Inicie o programa nginx com o seguinte comando:
nginx -s para desligar rápido nginx -s saiu do desligamento gracioso Nginx -s reload mudando a configuração, iniciando novos processos de trabalho com uma nova configuração, desligamento gradual dos processos antigos de trabalho nginx -s reabrir reabrir arquivos de log Acessando o site de balanceamento de carga nginx via navegador:O login do hiperlink está visível.
Atualizamos e revisitamos várias vezes, e percebemos que o conteúdo retornado é diferente a cada vez, e você pode ver que o nginx distribui diferentes requisições para diferentes serviços http no backend,Tentando parar o site site1, vemos que ele não afeta nosso acesso normal, e o nginx encaminha todas as solicitações para o site site2。
Status da configuração do balanceamento de carga Nginx
| estado | Visão geral | | Abaixo | O servidor atual não participa do balanceamento de carga por enquanto | | Reserva | Servidores de backup reservados são ativados quando todos os outros servidores estão desligados | | max_fails | O número de solicitações falhadas permitidas, se o número de requisições falhadas exceder o limite, o servidor é desativado do pool de serviços virtuais após fail_timeout tempo | | fail_timeout | Após uma falha max_fails, o serviço pausa o tempo, max_fails o valor fail_timeout deve ser definido | | max_conns | Limite o número máximo de conexões para diferentes configurações de hardware de servidor |
Política de agendamento de balanceamento de carga Nginx
| Algoritmos de escalonamento | Visão geral | | Pollot | Enquete um por um, o método padrão | | Peso | Na votação ponderada, quanto maior o peso, maior a chance de distribuição | | ip_hash | A alocação de hash resultante do IP de acesso fará com que solicitações do mesmo endereço IP acessem um servidor fixo em segundo plano | | url_hash | Atribuir de acordo com o resultado do hash da URL visitada | | least_conn | O número mínimo de links, o servidor com menos links será atribuído | | Valor da chave de hash | Chave Personalizada de Hash |
Para mais informações sobre configurações nginx, veja:O login do hiperlink está visível.
|
Anterior:Divisão e exclusão de logs NginxPróximo:O conceito e a diferença entre ITO, BPO, KPO e os três
|