Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a: Programador
Utilize este artigo para planear padrões de chamadas do SharePoint Embedded antes de criar operações de conteúdo e contentor de alto volume. O SharePoint Embedded expressa o débito como unidades de recursos por minuto (um modelo normalizado de custo-pedido) em vez de como uma taxa fixa de pedidos por segundo; A secção Limites de taxa de API explica como traduzir unidades de recursos para uma taxa de pedido esperada.
Os limites marcados com * podem ser aumentados a pedido através do suporte da Microsoft ou do seu contacto de inclusão do SharePoint Embedded; planeie o limite predefinido e peça um aumento antes de o abordar na produção.
Limitar categorias
Os limites do SharePoint Embedded afetam:
- *Contagens de tipos de contentor
- *Contagens de contentores
- Armazenamento por tipo de contentor e contentor
- Arquivos e pastas
- Permissões
- Tamanho do arquivo
- Contagem de versões
- *Limites de taxa de API
- *Pedidos por aplicação, contentor e utilizador
Observação
Estes limites podem ser alterados. Verifique os limites atuais antes de iniciar a produção.
Limites de tamanho
O SharePoint Embedded impõe os seguintes limites de tamanho.
| Recurso | Limite |
|---|---|
| Tipos de contentor que um inquilino parceiro pode criar | 25* |
| Tipos de contentor que uma aplicação pode possuir | 1 |
| Contentores de um tipo de contentor por inquilino consumidor | 100 k* |
| Armazenamento por tipo de contentor por inquilino de consumo | 100 TB* |
| Files e pastas por contentor | 30 M |
| Armazenamento por contentor | 25 TB |
| Files e pastas com permissões de adição por contentor | 5k |
| Tamanho do arquivo | 250 GB |
| Contagem de versões por ficheiro | 500 (Definição Predefinida dos Limites automáticos do Histórico de Versões) |
| Número de utilizadores partilhados por pasta ou ficheiro | 5k |
Um asterisco (*) indica um limite que pode pedir para aumentar.
Dos tipos de contentor que um inquilino cria, pode ser um tipo de contentor de avaliação gratuita para desenvolvimento e teste e os restantes são tipos de contentor padrão (faturados). Os novos inquilinos começam com uma predefinição mais baixa que pode ser levantada a pedido. Para obter detalhes de avaliação versus padrão, veja Criar e configurar um tipo de contentor.
Design para limites de tipo de contentor
Uma aplicação pode ser proprietária de um tipo de contentor.
Não modele cada cliente, projeto, área de trabalho ou utilizador como um tipo de contentor separado.
Utilize contentores para instâncias de armazenamento de aplicações no tipo de contentor.
Escolha um tipo de contentor para comportamento ao nível da aplicação, relação de acesso e responsabilidade de faturação.
Para o planeamento do tipo de contentor, veja Compreender os tipos de contentor e os contentores.
Conceção para limites de contentor
Os contentores fornecem o limite de armazenamento e segurança.
Planeie quantos contentores cada inquilino consumidor pode criar.
Conta dos contentores ativos e de qualquer ciclo de vida de contentor eliminado que possa afetar as quotas ou o armazenamento.
Mantenha os limites dos contentores alinhados com os requisitos de acesso, ciclo de vida e governação.
Estruturar para limites de permissão
O SharePoint Embedded permite até 5000 ficheiros e pastas com permissões de adição por contentor.
Evite conceber todos os ficheiros ou pastas para terem permissões exclusivas quando um modelo ao nível do contentor ou ao nível da pasta for suficiente.
Utilize a associação a contentores e funções sempre que possível.
Para obter os conceitos de permissão, veja Planear a autenticação e as permissões.
Respostas de limitação
Quando as aplicações atingirem os limites de serviço, o SharePoint Embedded pode devolver:
- HTTP
429 Too Many Requests. - HTTP
503 Server Too Busy.
Ambas as respostas incluem um Retry-After cabeçalho.
O cabeçalho indica à aplicação quanto tempo deve esperar antes de repetir ou efetuar um novo pedido.
Importante
Os pedidos limitados contam para os limites de utilização. Se ignorar Retry-After, a sua aplicação pode causar mais limitação.
Orientação de repetição
Implemente a lógica de repetição que:
- Deteta HTTP
429e503. - Lê o
Retry-Aftercabeçalho. - Aguarda a duração especificada antes de tentar novamente.
- Reduz a simultaneidade após a limitação.
- Evita ciclos de repetição imediatos.
- Evita picos de pedidos após um período de espera.
Utilize repetições limitadas e falhas persistentes do surface na telemetria de operações. Para obter orientações gerais sobre como lidar com respostas de limitação, veja Orientações de limitação do Microsoft Graph.
Orientações de simultaneidade
Reduza o número de pedidos simultâneos quando ocorre limitação.
Evite padrões de rajada que enviam muitos pedidos no mesmo instante.
Distribuir trabalho ao longo do tempo ao processar grandes conjuntos de contentores ou ficheiros.
Utilize filas ou trabalhos em segundo plano para suavizar o tráfego.
Priorize as operações visíveis pelo utilizador em vez da manutenção em segundo plano quando estiver perto dos limites.
Unidades de recursos da API
As APIs diferentes têm custos diferentes consoante a funcionalidade e a complexidade.
O custo é normalizado e expresso como unidades de recursos.
Os limites de taxa de API também são definidos com unidades de recursos.
Cada pedido custa unidades de recursos com base na sua complexidade:
| Unidades de recurso por solicitação | Operações |
|---|---|
| 1 | Consulta de item único, como obter item. |
| 2 | Consulta com vários itens, como listar subordinados, criar, atualizar, eliminar e carregar. |
| 5 | Todas as operações de recursos de permissão, incluindo $expand=permissions. |
Observação
Os custos da unidade de recurso podem ser alterados.
Limites de taxa de API
O SharePoint Embedded impõe estes limites de taxa de API.
| Recurso | Limite |
|---|---|
| Pedidos por contentor | 3k unidades de recursos por min |
| Pedidos por aplicação por inquilino | 12 mil unidades de recursos por min* |
| Pedidos por utilizador | 600 unidades de recursos por min |
Um asterisco (*) indica um limite que pode pedir para aumentar.
Os limites da aplicação são definidos em unidades de recursos.
Os pedidos reais por minuto dependem das APIs que chama e do custo unitário do recurso.
Para estimar a taxa de pedidos, a média é de cerca de duas unidades de recursos por pedido e divide o limite de unidades de recursos da aplicação em dois.
Limitação da taxa de criação de contentores
Por inquilino consumidor e durante as horas de pico do inquilino, a criação de contentores está limitada a 5 novos contentores por segundo. Os pedidos para além deste limite são limitados por taxa. Fora das horas de ponta, os contentores podem ser criados a um ritmo mais rápido.
Custos da operação de permissão
As operações de recursos de permissão têm um custo unitário de recursos mais elevado.
As operações que incluem $expand=permissions estão listadas em cinco unidades de recursos.
Reduza a expansão desnecessária de permissões.
A cache de decisões derivadas de permissão apenas quando é segura para o seu modelo de segurança.
Atualize os dados de permissão quando ocorrem alterações de associação ou função.
Considerações sobre criação de batches
A criação de batches pode reduzir a sobrecarga do cliente, mas não remove os limites do serviço nem o impacto na faturação.
Conte cada operação subjacente quando estimar o consumo da unidade de recurso e o custo da transação.
Evite criar lotes que concentrem demasiado trabalho num contentor, aplicação, inquilino ou utilizador num curto intervalo de tempo.
Respeitar as respostas de limitação para operações em lotes de acordo com os detalhes de resposta devolvidos pela plataforma.
Considerações do desempenho
Conceção para:
- Menos chamadas com permissões pesadas.
- Simultaneidade previsível.
- Sincronização incremental.
- Recuo após limitação.
- Separação do primeiro plano e do trabalho em segundo plano.
- Equidade ao nível do inquilino para aplicações multi-inquilino.
- Monitorização da taxa de pedidos, dos códigos de resposta e da latência.
Para obter o impacto na faturação das transações de API, veja Escolher um modelo de faturação.
Monitorização operacional
Controlar:
- HTTP
429e503taxas de resposta. - Contagens de repetição e durações de espera.
- Operações de utilização intensiva de recursos.
- Pedidos por aplicação, inquilino, utilizador e contentor.
- Comprimento da fila da tarefa em segundo plano.
- Crescimento do armazenamento por contentor e inquilino.
- Frequência da operação de permissão.
Utilize estes sinais para otimizar a simultaneidade e identificar inquilinos ou fluxos de trabalho que precisem de alterações de estrutura.
Lista de verificação de planejamento
- Confirme os limites de tamanho atuais antes do lançamento da produção.
- Modelar contentores em vez de criar muitos tipos de contentor.
- Estimar o armazenamento por contentor e por inquilino de consumo.
- Calcule as contagens de ficheiros e pastas.
- Evite permissões de aditivos desnecessárias.
- Implemente o
Retry-Afterprocessamento para429e503. - Limite a simultaneidade e evite picos.
- Estimar a utilização da unidade de recurso por tipo de operação.
- Reduza as operações com permissões intensivas.
- Monitorizar a limitação e a latência.
- Inclua o impacto da faturação na estrutura da API.
Artigos de planeamento relacionados
- Compreender a arquitetura de aplicações e inquilinos
- Compreender os tipos de contentor e os contentores
- Planear a autenticação e as permissões
- Escolher um modelo de faturação
Próximas etapas
Comece a criar com o Início Rápido: crie a sua primeira aplicação com o VS Code.