Prevenção de Throttling

Prevenção de limitação (throttling) do KONNEKT inclui duas políticas uma "controle de frequência de atualização" política e uma "limitação da taxa de requisições" política projetada para gerenciar e controlar a velocidade com que as solicitações são feitas à GraphAPI da Microsoft, garantindo que as conexões com o SharePoint Online (SPO) permaneçam estáveis e tenham desempenho ideal. Essas políticas são particularmente úteis para evitar uso excessivo de recursos e manter uma experiência de usuário fluida.

O uso das APIs do Microsoft 365 está sujeito a limitações em termos da quantidade de solicitações por tempo que um aplicativo pode enviar. Se um aplicativo usar mais recursos, ele será limitado (throttled). Você pode encontrar mais sobre isso em documentação da Microsoftarrow-up-right.

Como o KONNEKT usa a API REST do Microsoft SharePoint Online e a Microsoft Graph API, pode acontecer que as APIs da Microsoft limitem (throttle) o uso do KONNEKT. Se um aplicativo for limitado, a API correspondente (por exemplo, a API REST do SPO) informa ao KONNEKT que ele deve aguardar um determinado período de tempo. Isso começa em alguns segundos e pode crescer para minutos, dependendo do uso. Os impactos para o KONNEKT podem ser navegação lenta ou carregamento/gravação de arquivos. Se a limitação crescer para minutos, isso resultará em mensagens de erro informando que o drive não está disponível no momento.

O KONNEKT possui vários mecanismos para reduzir a ocorrência de limitação, que são aplicados automaticamente.

Cenários Comuns para Prevenção de Limitação

Cenário 1: Uploads de Dados em Alto Volume ou Migração de Dados

Quando um usuário tenta fazer upload de um grande número de arquivos para / ou uma migração de dados dentro do SPO em um curto período, o dispositivo pode atingir o limite especificado.

Cenário 2: Operações Intensivas de Leitura

Se um usuário realizar operações intensivas de leitura, como consultar ou pesquisar um diretório grande (> 1000 itens), o dispositivo pode atingir o limite especificado.

Exemplos:

  • Usar a Pesquisa do Explorador de Arquivos em pastas grandes

  • Rolar através de pastas com numerosos arquivos gráficos ou PDFs

Cenário 3: Consultas de Permissão

A partir da versão 2.10, o KONNEKT também verifica permissões por pasta e arquivos, pois essas consultas consomem um número maior de unidades de recurso comparadas às outras operações. O sistema pode atingir o limite especificado muito mais rápido, o que pode acionar a prevenção de limitação. Consultas de permissão não serão acionadas se "Prevenção de Limitação do SharePoint" estiver definido como 'Alta'.

circle-exclamation

Unidades de Recurso

Cada tipo de requisição da GraphAPI consome diferentes quantidades de unidades de recurso:

  • Leituras de item único: 1 unidade de recurso cada

  • Operações de escrita e consultas de diretório: 2 unidades de recurso cada

  • Consultas de permissão: 5

Para detalhes, veja: https://learn.microsoft.com/en-us/sharepoint/dev/general-development/how-to-avoid-getting-throttled-or-blocked-in-sharepoint-onlinearrow-up-right

Como posso prevenir a limitação?

As seguintes circunstâncias promovem a limitação:

  • Uso de ferramentas de terceiros para backup do SPO - especialmente durante o horário de trabalho

  • Uso de ferramentas que rastreiam todo o seu sistema de arquivos (como renderizadores de visualização etc.)

  • Uso de pastas muito grandes com >1000 arquivos no primeiro nível da pasta

  • Uso excessivo da Pesquisa do Explorador de Arquivos em Coleções de Sites ou Bibliotecas de Documentos grandes

circle-info

Considere as seguintes configurações e ações para todos os usuários de um locatário M365 sem exceções.

Para evitar limitação:

  • Não execute backups do SPO durante o horário comercial.

  • Se a Pesquisa do Explorador de Arquivos for inevitável: otimize as pesquisas do Explorador de Arquivos, concentre-se em pastas específicas ou subpastas para limitar as solicitações à GraphAPI

  • Manutenção Regular: arquive ou remova arquivos, pastas, Bibliotecas de Documentos e Coleções de Sites desatualizados.

  • Evite o uso excessivo da Pesquisa do Explorador de Arquivos em Coleções de Sites ou Bibliotecas de Documentos grandes

  • Não use nenhum renderizador de visualização para recursos do KONNEKT. Veja também aqui. Você também pode definir o Filtro Offline para a extensão de arquivo "YYY" (que não existe), para impedir que o Windows File Explorer renderize visualizações para arquivos PDF.

  • Segmente seus dados (não muitas arquivos no primeiro nível de uma pasta).

  • Defina "Prevenção de Limitação do SharePoint" Política para "Alta" - recomendado apenas até a versão do KONNEKT 2.10.2

  • A partir da versão 2.11.0, recomendamos ativar "Limitação no lado do cliente" e definir a política "Prevenção de Limitação do SharePoint" para "Auto".

Quando você definir o registro do KONNEKT para "debug", você verá entradas de log com "ThrottlingHook: Need to wait Xs before start" (onde X representa a quantidade de segundos que o SPO quer que esperemos).

Entradas de log que contêm "[Sharepoint] UpdateDrives: Skipping volume due to throttling prevention." NÃO são causadas por limitação do SharePoint. Elas indicam operações regulares para prevenir limitação - nada com que se preocupar. ;-)

Como Funciona

A política "controle de frequência de atualização" limita solicitações por ciclos de atualização aprimorados, por exemplo, atualizando as Coleções de Sites dos usuários.

A política "limitação da taxa de requisiçõesA política "Limitação no lado do cliente" inclui limites e rígidos e

  • Limite suave: Quando o limite suave é atingido, o sistema começará a limitar as solicitações. Isso significa que a maioria das operações será atrasada por um curto período (por exemplo, 2 segundos), e o nível de prevenção de limitação mudará para ALTO. Algumas operações, como tarefas de upload oportunistas e operações de leitura antecipada, serão adiadas até que a quantidade de solicitações fique abaixo do limite suave.

  • Limite rígido: Quando o limite rígido é atingido, o sistema deixará de enviar qualquer solicitação. O aplicativo exibirá uma mensagem de erro até que o período da janela de tempo termine.

circle-exclamation

Last updated

Was this helpful?