Criação de uma política de limitação de solicitações
Função
Depois que uma API fica on-line, o sistema anexa uma política de limitação de solicitações a ela por padrão. O provedor de API pode alterar a política de limitação de solicitações com base nos recursos de serviço e na carga da API.
Uma política de limitação de solicitações restringe o número máximo de vezes que uma API pode ser chamada dentro de um período especificado.
URI
A tabela a seguir lista o método de solicitação HTTP/HTTPS e o URI da API.
|
Método de solicitação |
URI |
|---|---|
|
POST |
/v1.0/apigw/throttles |
Solicitação
|
Parâmetro |
Obrigatório |
Tipo |
Descrição |
|---|---|---|---|
|
name |
Sim |
String |
Nome da política de limitação de solicitação O nome de uma política de limitação de solicitações consiste de 3 a 64 caracteres, começando com uma letra. Apenas letras, dígitos e sublinhados (_) são permitidos. |
|
api_call_limits |
Sim |
Integer |
Número máximo de vezes que uma API pode ser acessada em um período especificado. O valor deste parâmetro não pode exceder o limite padrão 200 TPS. Você pode alterar o limite padrão para atender aos requisitos de serviço. O valor máximo é 2.147.483.647. Insira um número inteiro positivo. |
|
user_call_limits |
Não |
Integer |
Número máximo de vezes que a API pode ser acessada por um usuário no mesmo período. O valor deste parâmetro deve ser menor ou igual ao de api_call_limits. O valor máximo é 2.147.483.647. Insira um número inteiro positivo. |
|
app_call_limits |
Não |
Integer |
Número máximo de vezes que a API pode ser acessada por uma aplicação no mesmo período. O valor deste parâmetro deve ser menor ou igual ao de user_call_limits. O valor máximo é 2.147.483.647. Insira um número inteiro positivo. |
|
ip_call_limits |
Não |
Integer |
Número máximo de vezes que a API pode ser acessada por um endereço IP no mesmo período. O valor deste parâmetro deve ser menor ou igual ao de api_call_limits. O valor máximo é 2.147.483.647. Insira um número inteiro positivo. |
|
time_interval |
Sim |
Integer |
Período de tempo para limitar o número de chamadas de API. Esse parâmetro se aplica a cada um dos três limites de chamada de API anteriores. O valor máximo é 2.147.483.647. Insira um número inteiro positivo. |
|
time_unit |
Sim |
String |
Unidade de tempo, que pode ser:
|
|
remark |
Não |
String |
Descrição da política de limitação de solicitações A descrição não pode exceder 255 caracteres. |
|
type |
Não |
Integer |
Tipo da política de limitação de solicitações, que pode ser:
|
|
enable_adaptive_control |
Não |
String |
Habilitação do status da limitação de solicitações dinâmicas
Esta função não está disponível no momento. |
Exemplo de solicitação:
{
"api_call_limits": 800,
"user_call_limits": 500,
"app_call_limits": 300,
"ip_call_limits": 600,
"name": "800_calls_per_second",
"remark": "Total: 800 calls/second; user: 500 calls/second; app: 300 calls/second; IP address: 600 calls/second",
"time_interval": 1,
"time_unit": "SECOND"
}
Resposta
|
Parâmetro |
Tipo |
Descrição |
|---|---|---|
|
id |
String |
ID da política de limitação de solicitação |
|
name |
String |
Nome da política de limitação de solicitação |
|
api_call_limits |
Integer |
Número máximo de vezes que uma API pode ser acessada dentro de um período especificado |
|
user_call_limits |
Integer |
Número máximo de vezes que a API pode ser acessada por um usuário no mesmo período |
|
app_call_limits |
Integer |
Número máximo de vezes que a API pode ser acessada por uma aplicação no mesmo período |
|
ip_call_limits |
Integer |
Número máximo de vezes que a API pode ser acessada por um endereço IP no mesmo período |
|
time_interval |
Integer |
Período de tempo para limitar o número de chamadas de API |
|
time_unit |
String |
Unidade de tempo para limitar o número de chamadas de API |
|
remark |
String |
Descrição da política de limitação de solicitações |
|
create_time |
Timestamp |
Hora em que a política de limitação de solicitações é criada |
|
is_include_special_throttle |
Integer |
Indica se uma configuração de limitação de solicitação excluída foi criada. O valor pode ser:
|
|
type |
Integer |
Tipo da política de limitação de solicitações, que pode ser:
|
|
bind_num |
Integer |
Número de APIs às quais a política de limitação de solicitações foi vinculada |
|
enable_adaptive_control |
String |
Habilitação do status da limitação de solicitações dinâmicas
Esta função não está disponível no momento. |
Exemplo de resposta:
{
"id": "0325b671-2d50-4614-9868-22102262695d",
"name": "800_calls_per_second",
"api_call_limits": 800,
"user_call_limits": 500,
"app_call_limits": 300,
"ip_call_limits": 600,
"time_interval": 1,
"time_unit": "SECOND",
"create_time": "2017-12-29T01:55:59.9904225Z",
"remark": "Total: 800 calls/second; user: 500 calls/second; app: 300 calls/second; IP address: 600 calls/second",
"is_inclu_special_throttle": 2,
"type":1,
"bind_num": 0,
"enable_adaptive_control": "FALSE"
}
Códigos de status
|
Código de status |
Descrição |
|---|---|
|
201 |
Criado |
|
400 |
Solicitação inválida |
|
401 |
Não autorizado |
|
500 |
Erro do servidor interno |