Menu Docs
Página inicial do Docs
/
MongoDB Atlas
/ /

Limitações de gatilhos

Nesta página

  • Agregação
  • Carregamento em lote
  • Coleções de Time Series
  • Instâncias sem servidor
  • Instâncias do banco de dados federado
  • Fluxos de alterações
  • Comandos de banco de dados
  • Requisitos da versão do MongoDB
  • Opções de query
  • Resultados da query
  • Solicitar tráfego
  • Pool de conexões

Há várias diretrizes a serem lembradas ao projetar como suas ferramentas e clientes interagem com o MongoDB por meio de gatilhos. Tenha em mente essa orientação ao decidir como estruturar as queries, selecionar quais operações CRUD e de agregação usar e determinar como lidar com cargas de trabalho simultâneas.

Os gatilhos suportam todosos estágios do pipeline de agregação em funções do sistema, exceto $currentOp e $indexStats.

Por motivos de segurança, somente um subconjunto de aggregation pipeline stages é aceito em funções do usuário.

Para obter uma lista de estágios de pipeline disponíveis e seu contexto da função permitido, consulte Agregação.

Quando os dados são carregados em massa/ lote no MongoDB Atlas, você pode ver um atraso na exibição de dados nos dispositivos enquanto o Atlas processa as alterações.

Não é possível definir gatilhos de banco de dados em coleções de séries temporais. Isso ocorre porque as coleções de séries temporais ainda não aceitam change streams.

Não é possível definir gatilhos de banco de dados em uma instância sem servidor. Isso ocorre porque as instâncias sem servidor não oferecem suporte a change streams.

Você não pode definir gatilhos de banco de dados em uma instância do banco de dados federado. Isso ocorre porque as instâncias do banco de dados de dados federado não oferecem suporte a change streams.

O Atlas limita o número total de fluxos de alterações abertos em um determinado cluster com base no tamanho do cluster. A tabela a seguir lista as limitações para cada tamanho de cluster:

Tamanho do cluster
Número máximo de fluxos de mudança
Nível gratuito (M0)
5
Clusters compartilhados (M2/M5)
10
Cluster pequenos e dedicados (M10/M20)
100
Agrupamentos padrão (M30/M40)
1000
Clusters padrão (M50 - M90)
1000
Clusters de alta potência (M100+)
1000

Observação

O Atlas abre um único fluxo de alteração em cada coleção associada a um gatilho de banco de dados.

Você pode chamar um subconjunto limitado de comandos de banco de dados de dados quando conectado a um cluster MongoDB pelo protocolo de conexão. Para obter uma lista dos comandos suportados, consulte Comandos do banco de dados.

Observação

o App Services não suporta quaisquer comandos do banco de dados de dados no Atlas Functions.

Você pode acessar a maior parte da funcionalidade CRUD e Agregação do MongoDB versão 3.6. No entanto, os Triggers não oferecem suporte a todas as operações e recursos disponíveis em ferramentas e clientes padrão. Para obter uma lista de operações específicas do MongoDB que estão disponíveis quando você se conecta ao MongoDB por meio de Triggers, consulte a referência da API de agregação CRUD & .

Os gatilhos suportam todas as opções de consulta em funções do sistema. Para obter uma lista de opções específicas disponíveis quando você se conecta ao MongoDB por meio de triggers, consulte Opções de query.

As queries do MongoDB executadas por meio de triggers podem retornar um máximo de 50,000 documentos. Se precisar retornar mais documentos, recomendamos paginar sua query.

Os limites do Atlas solicitam tráfego para os seguintes padrões:

  • 10,000 solicitações simultâneas. Todas as solicitações feitas além do limite de solicitações simultâneas recebem um código de status de resposta HTTP de 429 - Excesso de solicitações.

O Atlas pode lidar com solicitações muito superiores aos limites acima. No entanto, esses limites são implementados para garantir que os aplicativos sejam dimensionados com responsabilidade e evitar ataques de DNS e cobranças de cobrança não intencionais.

Você pode solicitar um limite maior enviando um ticket de suporte.

O Atlas usa o pool de conexões para reduzir a sobrecarga de abrir e fechar conexões com frequência entre solicitações e execuções do Trigger. As conexões são abertas conforme necessário. O pooling de conexões depende de vários fatores:

  • Camada do cluster. Quanto maior a camada de cluster, mais conexões disponíveis no pool.

  • Modo de sistema. Sistemas globais usam diversos servidores em cada região e, portanto, possuem um pool de conexões geral maior.

  • Serviços. Cada serviço tem um pool de conexões independente, portanto, o número de serviços em seu aplicativo não afeta o número de conexões disponíveis.

Voltar

Registros