orchestrator
latest
false
UiPath logo, featuring letters U and I in white

Guia da API do Orchestrator

Automation CloudAutomation Cloud Public SectorAutomation SuiteStandalone
Última atualização 25 de nov de 2024

Limites de taxa e otimização do uso de campos de dados grandes

Os limites de taxas e otimizações em relação a campos de dados grandes são práticas recomendadas do setor para manter níveis de desempenho ideais, uso altamente seguro e disponibilidade constante do serviço. É assim que eles beneficiam você:
  • Eles garantem um sistema previsível: saber o limite de chamada de API ajuda a projetar e manter seus aplicativos. Fornecem um ambiente previsível, minimizando surpresas devido a violações de limite inesperadas.
  • Melhoram o desempenho: ao controlar o tráfego em nossos servidores, garantimos o desempenho ideal e respostas mais rápidas, melhorando significativamente sua experiência com o produto.
  • Aumentam a segurança: os limites descritos abaixo atuam como uma camada adicional de segurança, protegendo seu sistema contra possíveis ameaças cibernéticas.
  • Garantem um uso justo: nossos limites de taxa garantem uma alocação equitativa de recursos para todos os usuários e uma operação tranquila, mesmo durante períodos de pico de uso.

Os limites e as otimizações de campos de dados grandes descritos abaixo exigem alguns ajustes de sua parte, mas estamos confiantes de que eles trarão benefícios a longo prazo.

Limites de taxa

Esses são os limites que impomos:

Endpoint

Limits

Em vigor desde

Exemplos

GET/odata/Jobs/?<filters>

  • 100 solicitações de API/minuto/tenant para uso de não automação1
  • 1.000 solicitações de API/minuto/tenant para uso de automação2

Tenants Community, Canary e Enterprise: julho de 2024

  • GET/odata/Jobs
  • GET/odata/Jobs?$top=100
  • GET/odata/Jobs?$top=20&$filter=Robot/Id eq 123L
  • GET/odata/Jobs?$filter=((CreationTime ge 2024-04-04T12:00:47.264Z) and (ProcessType eq 'Process'))&$expand=Robot,Machine,Release&$orderby=CreationTime desc

GET/odata/QueueItems/?<filters>

  • 100 solicitações de API/minuto/tenant para uso de não automação1
  • 1.000 solicitações de API/minuto/tenant para uso de automação2

Tenants Community, Canary e Enterprise: julho de 2024

  • GET/odata/QueueItems
  • GET/odata/QueueItems/?$top=20
  • GET/odata/QueueItems?$filter=((Status eq '0'))
  • GET/odata/QueueItems?$filter=((QueueDefinitionId eq 102135))&$expand=Robot,ReviewerUser&$orderby=Id desc

POST/odata/AuditLogs/UiPath.Server.Configuration.OData.Export

100 solicitações de API/dia/tenant

Community, Canary e Enterprise tenants: outubro de 2024

N/A

POST/odata/QueueDefinitions({key})/UiPathODataSvc.Export

100 solicitações de API/dia/tenant

Community, Canary e Enterprise tenants: outubro de 2024

N/A

POST/odata/RobotLogs/UiPath.Server.Configuration.OData.Export

100 solicitações de API/dia/tenant

Community, Canary e Enterprise tenants: outubro de 2024

N/A

POST/odata/Jobs/UiPath.Server.Configuration.OData.Export

100 solicitações de API/dia/tenant

Community, Canary e Enterprise tenants: outubro de 2024

N/A

1 O uso de não automação refere-se às chamadas de API originadas de integrações de API fora dos processos, como scripts do PowerShell e ferramentas de monitoramento de terceiros.

2 O uso de automação refere-se às chamadas de API provenientes das atividades Get Queue Items, Get Jobs e Orchestrator Http Request.

Importante: GET/odata/Jobs(<job_id>) não é de taxa limitada.

Esses limites não se aplicam à adição de itens de fila e trabalhos de processamento. Dessa forma, não há impacto na adição de um item de fila, na remoção dele de uma fila, na configuração do seu status ou na inicialização e processamento de qualquer número de trabalhos.

Você pode verificar seu uso de API por mês ou por dia na guia Auditoria de API no nível do tenant na janela Monitoramento.

Cabeçalhos expostos

Cabeçalho

Description

Exemplo

Retry-After

Todas as solicitações além dos limites mencionados acima recebem uma resposta HTTP 429, que inclui esse cabeçalho.

Ela exibe o número de segundos que você precisa esperar até que o ponto de extremidade esteja disponível novamente.

Retry-After: 10 significa que o limite de taxa no ponto de extremidade expira em 10 segundos. Quaisquer novas tentativas dentro desses 10 segundos resultam em uma resposta 429.

X-RateLimit-Remaining

O número de chamadas restantes

X-RateLimit-Remaining: 30 significa que você tem 30 chamadas restantes no intervalo de tempo atual
Observação:

Se o número de solicitações por minuto estiver abaixo de 10, ele é renderizado como 0.

Impacto das atividades

As seguintes atividades são impactadas por esses limites:

  • Get Job
  • Get Queue Items
  • Solicitação Http do Orchestrator (quando usada para chamar os pontos de extremidade GET /odata/Jobs ou GET /odata/QueueItems)
As Atividades do sistema versão 2024.3 ou mais recentes aplicam o cabeçalho de resposta do Retry-after, o que significa que executam novas tentativas automáticas de operações do Orchestrator. Certifique-se de sempre usar a versão mais recente das Atividades do sistema para se beneficiar disso.

Adaptação às alterações

Isso é o que recomendamos que você faça para garantir que você esteja em conformidade com nossos limites e aproveite-os ao máximo:

  • Revise seus padrões de uso de API e as informações que você recupera de nossos pontos de extremidade do tipo GetAll mencionados anteriormente.
  • Ajuste sua frequência de chamadas de API e procedimentos de extração de dados para se alinhar a esses limites quando necessário.
  • Use a opção Exportação de dados em tempo real do Insights para exportações em tempo real.
  • Consulte as seções Exportação de trabalhos e Exportação de itens de fila para obter exemplos de como recuperar trabalhos e dados de itens de fila apenas para fins de relatório e arquivamento.
    Importante:
    • Esses pontos de extremidade são limitados a 100 solicitações/dia/tenant de API.

      Depois que esse limite for excedido, um erro #4502 será exibido, afirmando que o limite diário por tenant foi atingido. O limite é redefinido às 00:00 UTC.

    • Não use esses pontos de extremidade para recuperação de dados em tempo real.
  • Certifique-se de usar sempre a versão mais recente das Atividades do sistema.
  • Entre em contato com seu gerente de conta ou nossa equipe de suporte se você tiver alguma dúvida ou precisar de mais esclarecimentos.

Alertas

Esses alertas, disponíveis na seção Limites de taxa de API de suas configurações de alertas, informam quando os limites são excedidos e fornecem informações valiosas sobre o ponto de extremidade impactado.

  • A taxa de solicitação excedeu o limite no último dia - Gravidade Warn:
    • É enviado diariamente, no aplicativo e por email.
    • Você está inscrito nele por padrão.
    • Inclui o nome do ponto de extremidade para o qual o número de solicitações foi excedido.
    • Inclui um link para a janela de monitoramento de auditoria de API no nível do tenant, focada na visualização diária. Detalhes...
    • Requer a permissão Auditoria - Visualização.
  • A taxa de solicitação excedeu o limite - Gravidade do Erro:
    • É enviado a cada dez minutos, no aplicativo e por email.
    • Sua inscrição está cancelada por padrão.
    • Inclui o nome do ponto de extremidade para o qual o número de solicitações foi excedido.
    • Inclui um link para a janela de monitoramento de Auditoria de API no nível do tenant, focada na visualização detalhada de 10 minutos. Detalhes...
      Observação: pode haver um atraso de 10 minutos entre o momento em que o limite é excedido e o tempo em que o alerta é enviado.
    • Requer a permissão Auditoria - Visualização.

Cenários de alerta

Você é alertado nos seguintes cenários:

  • Quando você excede 100 solicitações/minuto/tenant de API por meio de uso não automatizado.
  • Quando você excede 1.000 solicitações/minuto/tenant de API por meio do uso de automação.

Campos de dados grandes

Os pontos de extremidade de API usados para recuperar listas de trabalhos e itens de fila podem ser problemáticos quando usados para monitoramento em tempo real e exportação de dados. Por exemplo:

  • Ao solicitar até 1.000 itens, com cada item no valor de até 1 MB de dados grandes, a resposta a uma única chamada de API pode ser de 1 GB. Como há intermediários que não permitem respostas desse tamanho, as solicitações falham.

  • Ao usar filtros complexos e, em seguida, paginar uma fila com vários milhões de itens de fila, as solicitações podem começar a esgotar o tempo após algumas dezenas de páginas. Isso se deve à quantidade de dados que precisam ser recuperados do banco de dados.

Campos de trabalhos

Para melhorar a eficiência do sistema e proteger a privacidade dos dados, dados específicos são omitidos das respostas do ponto de extremidade Jobs - GetAll. Esses são os campos impactados:

Endpoint

Campos omitidos

O que você pode usar alternativamente

Em vigor desde

GET/odata/Jobs

  • InputArguments

  • OutputArguments

GET/odata/Jobs({key})

Tenants Community e Canary: março de 2024

Tenants Enterprise: julho de 2024

Se você estiver usando o ponto de extremidade GET /odata/Jobs, por meio da API ou das atividades Get Jobs, Get Queue Itens ou Orchestrator HTTP Request, você precisa descobrir se está usando algum dos campos listados. Em caso afirmativo, esteja ciente de que o conteúdo desses campos será retornado como nulo.

Recomendamos que você teste processos em seus tenants Canary para avaliar o impacto.

Campos de dados grandes de itens de filas

O desempenho do ponto de extermidad GET/odata/QueueItems é otimizado aplicando essas limitações de tamanho aos campos:

Campo

Limite

Em vigor desde

Como saber se você foi impactado

Como resolver isso

Progresso

1.048.576 caracteres

> Tenants Community e Canary: abril de 2024

> Tenants Enterprise: maio de 2024

Uma mensagem de erro específica é retornada se os dados que você está tentando carregar excederem esses limites.

Recomendamos que você use buckets de armazenamento e/ou armazenamento de blob do Data Service se precisar armazenar mais dados.

104.857 caracteres

Todos os tenants: setembro de 2024

AnalyticsData/Analytics

5.120 caracteres

> Tenants Community e Canary: junho de 2024

> Tenants Enterprise: setembro de 2024

OutputData/Output

51.200 caracteres

SpecificContent/SpecificData

256.000 caracteres

ProcessingException - Reason

102.400 caracteres

ProcessingException - Details

102.400 caracteres

Importante:

Esses limites são calculados com base no estilo de codificação UTF-16, que é usado principalmente pelo SQL Server para armazenar dados.

As informações são armazenadas no SQL Server por meio de tipos de dados como NVARCHAR. Nesses tipos de dados, cada caractere, incluindo caracteres amplamente usados de idiomas como chinês, japonês e coreano, é armazenado usando 2 bytes. Isso pode ser enganoso quando você verifica a carga útil de dados usando o Notepad ou no UTF-8, pois esses exibem 1 byte por caractere (principalmente ASCII 0-127 abc123 etc).

Por exemplo, se você fosse armazenar um caractere chinês como 文 em um arquivo de texto com codificação UTF-8, ele seria armazenado como uma sequência de 3 bytes (E6 96 87), consumindo mais espaço de armazenamento. A diferença entre estilos de codificação torna o número de caracteres não confiável como um limite.

O filtro a seguir também é limitado para fins de desempenho:

Filtro

Limite

Em vigor desde

Como saber se você foi impactado

Como resolver isso

$top

> Se você não usar o filtro $top, receberá 100 registros por padrão.
> Se você usar o filtro $top, receberá no máximo 100 registros. Qualquer coisa que exceda 100 dispara uma mensagem de erro 400 Bad Request.

> Tenants Community e Canary: junho de 2024

> Tenants Enterprise: setembro de 2024

Enterprise: pretendemos enviar uma notificação por email aos administradores se detectarmos o uso desse filtro em chamadas de API. No entanto, pedimos que você também fique de olho.

Recomendamos que você modifique adequadamente sua lógica de uso de APIs ou processos se quiser exceder esse limite.

Alternativas

Você pode usar as seguintes alternativas para recuperar os campos Jobs e QueueItems:

Mudança de local para a nuvem

Importante:

Os limites de taxa e as alterações de campos de dados grandes não serão implementadas em ambientes locais.

Se você estiver usando o Orchestrator independente e estiver pensando em migrar para a nuvem, você pode usar os logs de solicitação do IIS para determinar a taxa de solicitação para os pontos de extremidade impactados. A análise depende de como você agrega os logs, para os quais você pode usar, por exemplo, o Microsoft Log Parser.

Para avaliar o impacto em campos de dados grandes, recomendamos testar seus processos em tenants Canary.

Esta página foi útil?

Obtenha a ajuda que você precisa
Aprendendo RPA - Cursos de automação
Fórum da comunidade da Uipath
Uipath Logo White
Confiança e segurança
© 2005-2024 UiPath. Todos os direitos reservados.