Compartilhamento de carga
O compartilhamento de carga permite que um DSA roteador distribua as solicitações de entrada igualmente entre todos os DSAs no mesmo local que atendam a mesma partição do namespace. Isso melhora o desempenho.
cad126br
O
compartilhamento de carga
permite que um DSA roteador distribua as solicitações de entrada igualmente entre todos os DSAs no mesmo local que atendam a mesma partição do namespace. Isso melhora o desempenho.Defina o conhecimento do DSA para permitir o compartilhamento de carga. Os sinalizadores do DSA que podem ser definidos são os seguintes:
- load-share -- Permite que o DSA faça parte do compartilhamento de carga
- load-share-group -- Especifica o grupo de compartilhamento de carga em que o DSA está
- precedence -- Especifica a ordem na qual os DSAs alocam o trabalho.
O compartilhamento de carga funciona melhor dentro de um site.
Os DSAs roteadores usam o algoritmo de compartilhamento de carga
least-busy
, que usa uma lista ordenada dos DSAs que estão atendendo cada partição do namespace. Os roteadores dão preferência aos DSAs que estão nas posições mais altas da lista e que não estão ocupados.Exemplo: compartilhamento de carga dentro do site de Nova Iorque
O diagrama a seguir mostra um DSA roteador conectado a três DSAs de dados dentro do mesmo site:

Os dois DSAs de clientes têm o mesmo prefixo, então, o roteador compartilha a carga com esse prefixo entre esses dois DSAs.
O fluxo de solicitações de pesquisa e comparação (incluindo comparações de vinculação de senha) dos roteadores para os DSAs de dados pode ser difícil de prever, pois as combinações abaixo afetarão o local de onde as solicitações são enviadas:
- Ordem de conhecimento
- Precedência
- Compartilhamento de carga e grupos de compartilhamento de carga
- Número e disponibilidade do DSA
O exemplo a seguir explicará o fluxo de uma solicitação e como as várias configurações o afetarão, para que os DSAs possam ser configurados de modo a obter um resultado que possa ser determinado. Configurações de exemplo são usadas para explicar o exemplo.
- D1 e H1 estão no grupo de compartilhamento de carga/gravação múltipla (GROUP1)
- D2 e H2 estão no grupo de compartilhamento de carga/gravação múltipla (GROUP2)
- H1 e H2 têm dsa-flags = multi-write-group-hub
- Pesquisas enviadas para R1
Exemplo de fluxo de solicitações de compartilhamento de carga de roteadores para DSAs de dados.

Aviso:
roteadores podem ser configurados para fazer parte de um grupo de compartilhamento de carga. No entanto, isso não afeta o local para onde encaminham as solicitações de pesquisa e comparação. Por exemplo, com a inclusão de load-share-group = "GROUP1" na configuração acima, não afetaremos o local para onde as solicitações serão enviadas. Essa decisão baseia-se exclusivamente na ordem de conhecimento/precedência.Para o cenário especificado, a tabela a seguir indica os DSAs de destino em que as solicitações de pesquisa/comparação são enviadas.
Caso | Status do DSA | Ordem de conhecimento | Precedência | Destinos de pesquisa | Comentário |
1 | Todos os DSAs em execução | “D1” de origem; “H1” de origem; “H2” de origem; “D2” de origem; | D1 e H1 | Primeiro o grupo de compartilhamento de carga é escolhido como GROUP1 usando D1 | |
2 | Todos os DSAs em execução | “D1” de origem; “H2” de origem; “H1” de origem; “D2” de origem; | D1 e H1 | Mostra o primeiro GROUP1 de compartilhamento de carga escolhido de D1, embora H2 seja o próximo da lista | |
3 | Todos os DSAs em execução | “D1” de origem; “H2” de origem; “D2” de origem; “H1” de origem; | D1 e H1 | Igual ao item anterior | |
4 | Todos os DSAs em execução | “H2” de origem; “D1” de origem; “D2” de origem; “H1” de origem; | D2 e H2 | Mostra o GROUP2 de compartilhamento de carga escolhido pela precedência de H2. | |
5 | D1 interrompido | “D1” de origem; “H1” de origem; “H2” de origem; “D2” de origem; | H1 | Compartilhamento de carga restrito ao DSA no GROUP1 | |
6 | D1 e H1 interrompidos | “D1” de origem; “H1” de origem; “H2” de origem; “D2” de origem; | D2 e H2 | Nenhum DSA de grupo de compartilhamento de carga disponível, vá para o próximo grupo GROUP2 e compartilhe a carga | |
7 | Todos os DSAs em execução | “D1” de origem; “H1” de origem; “H2” de origem; “D2” de origem; | set precedence = H1; | H1 e D1 | Grupo GROUP1 de compartilhamento de carga escolhido em H1 |
8 | Todos os DSAs em execução | “D1” de origem; “H1” de origem; “H2” de origem; “D2” de origem; | set precedence = H1, H2 | H1 e D1 | GROUP1 de compartilhamento de carga escolhido do grupo H1 |
9 | H1 interrompido | “D1” de origem; “H1” de origem; “H2” de origem; “D2” de origem; | set precedence = H1, H2; | D1 | As pesquisas serão enviadas ao GROUP1, conforme a precedência for dada a H1. |
10 |
A precedência e a ordem de conhecimento têm a mesma função. O objetivo de se ter a precedência configurada de forma independente é poder compartilhar os grupos de conhecimento entre os DSAs sem a necessidade de reordenação (conhecimento global). Isso significa que os roteadores podem ser configurados para determinada preferência para DSAs locais, pois DSAs de outros grupos podem ter problemas de latência.