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.
Azure razão confidencial limita o número de razãos em uma assinatura e os dados e o código que um razão armazena, para manter o desempenho e a disponibilidade de cada razão previsível. Este artigo descreve esses limites, como o razão responde quando uma solicitação os excede e qual desempenho esperar de um razão.
Note
Os limites neste artigo são padrões. Em determinados casos, um razão individual pode ter limites diferentes, por exemplo, um razão criado antes de um limite ser introduzido. Para solicitar limites mais altos ou discutir limitações, contate Suporte do Azure.
Limites de assinatura
O limite a seguir se aplica a cada assinatura Azure.
| Limit | Value |
|---|---|
| Razãos por assinatura | 2 |
Limites de dados do razão
Os limites a seguir se aplicam a cada razão por padrão.
| Limit | Valor padrão | Código do erro |
|---|---|---|
| Coleções por razão | 5,000 | CollectionCapacityExceeded |
| Comprimento da ID da coleção | 256 bytes | CollectionIdTooLong |
| Tamanho do conteúdo de uma entrada do razão | 8 KiB (8.192 bytes) | EntrySizeCapacityExceeded |
| Marcas por razão (somente razãos públicas) | 10,000 | TagCapacityExceeded |
- Coleções por razão: a coleção padrão não é contada. Quando um razão atinge o limite, as gravações que criariam uma nova coleção são rejeitadas. As gravações em coleções existentes ainda são bem-sucedidas.
- Comprimento da ID da coleção: o comprimento é medido em bytes da ID codificada utf-8, após a decodificação da URL. O limite se aplica somente quando uma gravação cria uma nova coleção, para que você possa continuar gravando e lendo de coleções criadas antes de esse limite ser introduzido.
-
Tamanho do conteúdo de uma entrada do razão: o tamanho é medido em bytes do valor codificado
contentsem UTF-8, após a decodificação JSON. O conteúdo de exatamente 8.192 bytes é aceito. O limite se aplica a gravações em coleções novas e existentes. A ID da coleção, as marcas e outros campos da solicitação não contam para esse limite. Toda a solicitação também está sujeita ao tamanho máximo do corpo da solicitação do razão. -
Marcas por razão: uma marca conta uma vez para cada coleção que a usa. Por exemplo, a marca
chocolateusada em duas coleções conta como duas marcas. Quando um razão atinge o limite, as gravações que adicionariam uma nova marca a uma coleção são rejeitadas. As gravações sem marcas ou com marcas que a coleção já usa ainda são bem-sucedidas.
Uma gravação que excede um limite é rejeitada com o código de status HTTP 400 (Solicitação Incorreta) e nada na solicitação é gravado no razão. A resposta contém o código de erro e uma mensagem que inclui o limite que se aplica ao razão. Por exemplo:
{
"error": {
"code": "EntrySizeCapacityExceeded",
"message": "Entry contents of 9000 bytes exceed the limit of 8192 bytes."
}
}
Limites de marca por gravação
As marcas têm suporte apenas em razãos públicos. Os limites a seguir se aplicam a cada razão pública.
| Limit | Value |
|---|---|
| Marcas por gravação | 5 |
| Comprimento da marca | 63 caracteres |
As marcas não podem estar vazias e podem conter apenas os caracteres A–Z, a–z, 0–9, , -, _e ~.. Uma gravação que excede esses limites ou contém uma marca inválida é rejeitada com o código de status HTTP 400 e o código de NotAllowed erro.
Limites de função definidos pelo usuário
Os limites a seguir se aplicam a UDFs (funções definidas pelo usuário) em cada razão. As solicitações que os excedem são rejeitadas com o código de status HTTP 400.
| Limit | Value | Código do erro |
|---|---|---|
| UDFs por razão | 100 | UserDefinedFunctionCapacityExceeded |
| Comprimento da ID da UDF | 256 bytes | InvalidFunctionId |
| Tamanho do código UDF | 64 KiB (65.536 bytes) | InvalidInput |
| Pré-ganchos por gravação | 5 | InvalidInput |
| Pós-ganchos por gravação | 5 | InvalidInput |
A contagem de UDF e os limites de comprimento de ID se aplicam somente quando você cria uma UDF. Você ainda poderá atualizar um UDF existente se seu código se ajustar dentro de 64 KiB.
Para obter as opções de runtime que se aplicam quando um UDF é executado, consulte Executar UDFs. Para obter mais informações sobre pré-ganchos e pós-ganchos, consulte Ganchos de transação.
Opções de runtime de ponto de extremidade definidas pelo usuário
Os valores definidos devem PATCH /app/userDefinedEndpoints/runtimeOptions estar dentro dos intervalos a seguir. Caso contrário, a solicitação será rejeitada com o código de status HTTP 400 e o InvalidInput código de erro. Somente as opções cujo valor a solicitação muda são verificadas.
| Opção de runtime | Valores permitidos |
|---|---|
max_heap_bytes |
Até 209.715.200 (200 MiB) |
max_stack_bytes |
1 a 10.485.760 (10 MiB) |
max_execution_time_ms |
Até 10.000 (10 segundos) |
max_cached_interpreters |
1 a 20 |
Performance
O desempenho de um razão depende da carga de trabalho, como o tamanho de suas entradas, quantas solicitações você envia simultaneamente e a combinação de leituras e gravações. As diretrizes a seguir fornecem uma ideia geral do que esperar. Não é uma garantia.
Throughput
- Um razão pode sustentar centenas de gravações por segundo. Entradas menores e solicitações mais simultâneas aumentam a taxa. Gravações que executam funções definidas pelo usuário demoram mais, dependendo do código das funções.
- Ler a entrada mais recente de uma coleção usa menos recursos do que uma gravação, portanto, um razão geralmente pode atender a mais dessas solicitações. Obter uma entrada por ID de transação, obter uma confirmação e consultas de intervalo usa mais recursos do que ler a entrada mais recente, pois o razão primeiro carrega os dados do armazenamento. Uma alta taxa dessas solicitações reduz a taxa de transferência deixada para gravações.
- Um cliente que aguarda cada resposta antes de enviar a próxima solicitação é limitado pelo tempo de viagem de ida e volta para o razão. Para aproveitar ao máximo um razão, envie solicitações simultaneamente e reutilize conexões.
Se sua carga de trabalho precisar de alta taxa de transferência sustentada, teste-a em um razão antes de ir para produção. Se precisar de mais taxa de transferência, entre em contato com Suporte do Azure.
Latency
- Por padrão, uma solicitação de gravação retorna assim que o razão aceita a gravação e o razão confirma a gravação logo depois. Antes de contar com uma gravação, por exemplo, para obter seu recibo, verifique se seu status é
Committed. As bibliotecas de cliente podem aguardar a confirmação para você. - Obter uma entrada por ID de transação, obter um recibo e consultas de intervalo pode retornar
Loadingprimeiro, enquanto o razão carrega os dados. Repita a solicitação dentro de um minuto até que ela retorne o resultado. - A latência também depende da distância e da carga. Cada nova conexão precisa de um handshake TLS com o razão, portanto, reutilize as conexões e execute seus clientes perto da região do razão. Espere que a latência aumente à medida que a carga em um razão se aproxima do que ele pode sustentar.