Cotas e limites

Neste documento, fornecemos informações sobre cotas e limites de recursos para o Cloud Pub/Sub.

Para mais informações sobre como rastrear suas cotas (como uso de tópicos ou assinaturas), consulte o Como monitorar.

Como ver o uso de cotas e gerenciar os limites de cota

Em um determinado projeto, você pode usar o painel de cotas de APIs e serviços para visualizar as cotas e o uso atuais. Você também pode usar esse painel para modificar uma cota de cada vez.

Para modificar várias cotas, use o painel do IAM e cotas de administrador

Você pode usar um dos painéis acima para:

  • reduzir suas cotas;
  • iniciar um processo para solicitar limites de cota mais altos.

Unidades de cota

Cada solicitação ou resposta conta como o maior valor entre 1 KB e o tamanho total da solicitação ou da resposta.

O uso de cota para cada solicitação ou resposta é arredondado para cima para o incremento de 1 KB mais próximo. Considere uma solicitação de publicação com 100 mensagens de 50 bytes cada e um comprimento de nome de tópico igual a 30 bytes. O uso de cota da solicitação seria max(1, ceil(5030/1000)) = 6kB.

Atribuição de uso do projeto

Para a capacidade de assinantes por push, o uso da cota é cobrado no projeto que contém a assinatura de push.

Para as cotas a seguir, o uso é cobrado no projeto associado às credenciais do responsável pela chamada, não no projeto que contém o recurso solicitado (ou seja, o projeto que aparece no nome do tópico ou da assinatura):

  • Capacidade do editor
  • Capacidade do assinante
  • Operações de administrador

Por exemplo: se uma conta de serviço no projeto A envia uma solicitação para fazer uma publicação em um tópico no projeto B, a cota é cobrada no projeto A. Cada solicitação contém credenciais que incluem um código de projeto.

Limites de cota

As cotas listadas na tabela a seguir podem ser visualizadas e editadas por projeto no painel de cotas de APIs e serviços

Cota Limite de cota padrão Descrição
Capacidade do editor 60.000.000 KB por minuto (1.000 MB/s) O uso da cota é baseado no tamanho das mensagens contidas em PublishRequest:

Observe que várias mensagens podem ser incluídas em uma única solicitação de publicação, e não há cobrança de cota adicional por mensagem.

Capacidade do assinante 120.000.000 KB por minuto (2.000 MB/s) Para assinaturas de pull, o uso da cota é baseado no tamanho das respostas Pull, para incluir:

Além disso, as solicitações Acknowledge e ModifyAckDeadline são incluídas nesta cota:

  • AcknowledgeRequest (RPC)
  • ModifyAckDeadlineRequest (RPC)
    Capacidade do assinante de push 6.000.000 KB por minuto (100 MB/s) Para solicitações de entrega por push feitas no ponto de extremidade de envio, o uso da cota é baseado no tamanho das solicitações para o ponto de extremidade de envio.
    Capacidade do assinante StreamingPull 120.000.000 KB por minuto (2.000 MB/s) O uso da cota é baseado no tamanho de StreamingPullResponses:

    Observe que as bibliotecas de cliente usam operações StreamingPull sempre que possível.

    Número de conexões StreamingPull abertas 30.000 conexões abertas de cada vez O número de conexões StreamingPull abertas a qualquer momento. Consulte StreamingPull.
    Taxa de conexões StreamingPull 6.000.000 por minuto A taxa de abertura de novas conexões StreamingPull. Consulte StreamingPull.
    Operações de administrador 6.000 por minuto (100 operações/s) Cada operação de administrador, como GetTopicRequest, cobra uma unidade nessa cota.

    Em geral, Get*, List*, Create*, Delete*, ModifyPushConfig, SetIamPolicy, GetIamPolicy e TestIamPermissions formam o grupo de operações de administrador.

    Limites de recurso

    Recurso Máximo
    Projeto 10.000 tópicos
    10.000 assinaturas
    Tópico 10.000 assinaturas anexadas
    Inscrição Retém as mensagens não confirmadas no armazenamento persistente por sete dias a partir do momento da publicação. As assinaturas cuja presença do cliente não for detectada por 30 dias serão automaticamente excluídas. A presença é detectada por meio de chamadas como Pull, Acknowledge ou operações de push realizadas.
    Solicitação de publicação 10 MB (tamanho total)
    1.000 mensagens
    Mensagem Tamanho da mensagem (o campo data): 10 MB (o tamanho máximo da solicitação)
    Atributos por mensagem: 100
    Tamanho da chave do atributo: 256 bytes
    Tamanho do valor do atributo: 1.024 bytes
    Mensagens de entrega por push Mensagens pendentes são limitadas a 10 MB (ou seja, a soma do tamanho de todas as mensagens pendentes) ou um total de 1.000 mensagens. Se seu ponto de extremidade responder rapidamente (mais rápido que 100 ms), esses limites não serão aplicados.
    Mensagens Pull/StreamingPull Não há limites no número ou no tamanho agregado para as mensagens Pull ou StreamingPull pendentes.

    Dicas e advertências

    Operações de alto volume

    Se você usar a ferramenta gcloud do Cloud SDK com uma conta de usuário normal (ou seja, uma conta que não é de serviço), as operações do Cloud Pub/Sub são limitadas a uma taxa adequada para operações manuais. Taxas acima desse limite resultarão no erro RESOURCE_EXHAUSTED. Para solucionar o problema, verifique se você está usando as credenciais da conta de serviço. Se você quiser usar credenciais do Cloud SDK para automação, ative uma conta de serviço para suas operações do Cloud Pub/Sub.

    Incompatibilidades de cota

    Incompatibilidades de cota podem acontecer quando as mensagens publicadas ou recebidas são menores que 1.000 bytes. Exemplo:

    • Se você publicar 10 mensagens de 500 bytes em solicitações separadas, o uso da cota de publicação será de 10.000 bytes. Isso ocorre porque as mensagens menores que 1.000 bytes são automaticamente arredondadas para o próximo incremento de 1.000 bytes.

    • Se você receber essas 10 mensagens em uma resposta pull única, o uso da cota de assinante poderá ser de apenas 5 kB, já que o tamanho real de cada mensagem é combinado para determinar a cota geral.

    • O inverso também é verdadeiro. O uso da cota do assinante pode ser maior do que o uso da cota de publicação se você publicar várias mensagens em uma única solicitação de publicação ou receber as mensagens em solicitações pull separadas.

    Esta página foi útil? Conte sua opinião sobre:

    Enviar comentários sobre…

    Documentação do Cloud Pub/Sub