Publicado originalmente em 25 de outubro de 2019
Com base no feedback de nossos recém-publicados Anúncio de registro de taxa de API Aqui está um artigo de acompanhamento que contém uma série de perguntas que recebemos comumente de clientes e parceiros. Observe que, à medida que recebermos mais perguntas e mais respostas, atualizaremos o conteúdo deste artigo.
Q. Em que nível a Limitação de Taxa de API será aplicada? É por exemplo? Por organização? Por aplicativo de API?
Um. Estaremos aplicando a Limitação de Taxa de API no nível de Aplicativo de API nível. Para maior clareza, um aplicativo de API está relacionado a cada aplicativo criado e mantido em uma organização do Brightspace Gerenciar ferramenta de extensibilidade. Cada aplicativo Gerenciar extensibilidade habilitado em um site do Brightspace receberá seu próprio bucket em silos de créditos de API.
Q. Qual será o tamanho do bucket de limite de taxa da API?
Um. O tamanho do bucket de limite de taxa é 50.000 créditos de API por minuto. Observe que incluímos o seguinte em cada cabeçalho de resposta da API:
Limite de taxa X restante - Esse valor fornece ao desenvolvedor o número restante de créditos disponíveis dentro do período de tempo fornecido. NOTA: esse valor só será significativo em sites em que a Limitação de taxa da API está ativada.
Q. Você publicará os custos de token por rota de API?
Um. A partir de 3 de dezembro de 2019, os custos do token de rota são definidos em 10 créditos por chamada de API.
À medida que monitoramos e analisamos os logs de uso da API, poderemos entender melhor os custos reais do servidor de nossas rotas de API. O resultado disso é que queremos nos reservar o direito de alterar os custos do token de rota da API. Prevemos que os custos do API Route mudarão antes do lançamento completo do produto em maio de 2020.
Incluímos o seguinte em cada cabeçalho de resposta da API:
Custo de solicitação X - esse valor informa ao desenvolvedor o número de créditos que a rota atual da API custa. Neste momento, esse valor sempre será 10.
Q. Haverá alguma maneira de saber se um dos meus aplicativos excedeu o limite de taxa da API (uma mensagem 429)?
R. Sim. Esses dados estarão disponíveis por meio do Brightspace Log do sistema. Esses dados serão retidos no Log do Sistema com base nas regras atuais de retenção de dados. Pesquisar por "Rota atingiu um limite de taxa" para localizar eventos de limite de taxa (429 mensagens).
Q. Haverá alguma maneira de saber se um dos meus aplicativos acionou um registro de taxas da API?
R. Sim. A partir da versão de dezembro do produto, esses dados estarão disponíveis no Brightspace Log do sistema. Esses dados serão retidos no Log do Sistema com base nas regras atuais de retenção de dados. Pesquise "Rota atingiu um limite de log" para encontrar registros de log de limite de taxa. Para sistemas que têm a limitação de taxa de API ativada, pesquise no Log do sistema por "A rota atingiu um limite excessivo" para identificar eventos de limite de taxa (erros 429).
Q. A Limitação de Taxa de API incluirá chamadas para Serviços LTI?
R. Sim. Todas as chamadas de serviço LTI Advantage estão sujeitas à mesma limitação de taxa que nossas APIs do Brightspace Learning Framework.
Q. Haverá algum indicador disponível para informar a um desenvolvedor que ele está chegando perto de usar seu bucket de limite de taxa de API?
R. Sim. O Limite de taxa X restante value informa a um desenvolvedor quantos créditos ele ainda tem para usar dentro do período de tempo atual.
Q. Haverá uma maneira de saber quanto tempo resta até que meu bucket de crédito de API seja recarregado?
R. Sim. Incluímos o seguinte campo em nosso cabeçalho de resposta:
Redefinição do limite da taxa X - Esse valor fornece a um desenvolvedor a quantidade de tempo, em segundos, até que o bucket seja redefinido.
Q. Acabei de receber uma mensagem 429. Como saberei quanto tempo tenho que esperar até que meu bucket de crédito de API seja recarregado?
Um. Para respostas 429, incluímos um valor de resposta de cabeçalho padrão do setor:
Tentar novamente - Esse valor fornece a um desenvolvedor a quantidade de tempo, em segundos, até que o bucket seja redefinido.
Q. Será possível adquirir créditos extras ou um balde de crédito maior?
R. Não. Acreditamos que a quantidade de créditos disponíveis por minuto reflete uma quantidade de uso aceitável.
Q. Estou preocupado que meu aplicativo exceda os limites fornecidos e meu código não esteja pronto para lidar com 429 mensagens. O que posso fazer?
Um. Com nosso anúncio inicial ocorrendo em outubro de 2019, nós da D2L acreditamos que fornecemos uma quantidade significativa de tempo de preparação para os clientes. Incentivamos todos os clientes a trabalhar com seu D2L TAM e/ou CSM para se preparar para essa mudança. Nós da D2L estamos mais do que felizes em conversar com você sobre como a limitação de taxa de API pode afetar o código existente que você escreveu.
Nosso objetivo para esta iniciativa é manter o desempenho e a estabilidade do seu investimento no Brightspace. Construímos a solução de forma que possamos gerenciar isenções quando necessário, mas queremos evitar ao máximo conceder essas exceções. Se você acredita que precisa de uma isenção, entre em contato com seu CSM e/ou TAM da D2L para que possamos trabalhar juntos para decidir sobre um caminho mutuamente aceitável a seguir.
Q. As chamadas de API malsucedidas (por exemplo, 400, 403, 404) custam créditos do meu aplicativo?
R. Sim. A lógica de limitação de taxa ocorre antes de processarmos a chamada à API. No momento em que recebemos a chamada, não sabemos se ela será bem-sucedida ou não.