Docs Menu
Docs Home
/ /
Referencia

Limitaciones del servicio

Atlas App Services cuenta con varias directrices que se deben tener en cuenta al diseñar la interacción de sus herramientas y clientes con MongoDB a través de App Services. Tenga en cuenta estas directrices al decidir cómo estructurar las consultas, seleccionar las operaciones CRUD y de agregación que se utilizarán y determinar cómo gestionar las cargas de trabajo simultáneas.

Los servicios de aplicaciones son compatibles con todos etapas de lacanalización de agregación en las funciones del sistema, excepto $currentOp y $indexStats.

Por razones de seguridad, solo un subconjunto de las etapas del proceso de agregación se admiten en las funciones de usuario.

Para obtener una lista de las etapas de la canalización que están disponibles y su contexto de función permitido, consulte Agregación.

Cuando se cargan datos en masa en MongoDB Atlas, es posible que observe una demora en la aparición de datos en los dispositivos mientras App Services procesa los cambios.

Puedes vincular una instancia de base de datos federada a tu aplicación como fuente de datos de MongoDB. Sin embargo, hay algunas advertencias que debes tener en cuenta al trabajar con Atlas Data Federation:

  • Las fuentes de datos federadas no admiten operaciones de escritura.

  • Solo se puede acceder a una fuente de datos federada desde una función del sistema.

  • No es posible conectarse a una fuente de datos federada a través del protocolo de cable.

  • No se pueden definir roles ni permisos para una fuente de datos federada.

  • No se puede establecer una preferencia de lectura para una fuente de datos federada.

  • No se puede crear un activador de base de datos en una fuente de datos federada.

  • No puede utilizar una fuente de datos federada como el clúster de Device Sync de su aplicación.

Puedes vincular una instancia sin servidor a tu aplicación como fuente de datos de MongoDB. Sin embargo, actualmente las instancias sin servidor no admiten flujos de cambios, por lo que las siguientes funciones están limitadas:

Atlas Device Sync no es compatible actualmente con clústeres fragmentados de MongoDB Atlas. Sin embargo, puede agregar un clúster fragmentado como fuente de datos y acceder a él desde una función.

Las colecciones de series temporales aún no admiten flujos de cambios. Por lo tanto, no se pueden definir desencadenadores en ellas.

Puede utilizar colecciones de series temporales con Atlas Device Sync, pero solo se admite la ingesta de datos.

App Services admite puntos de conexión privados para conectarse de forma segura a una nube virtual privada de AWS con AWS PrivateLink. Las aplicaciones deben implementarse localmente en una región de AWS para usar un punto de conexión privado. App Services no admite puntos de conexión privados para aplicaciones globales ni para aplicaciones implementadas en GCP o Azure. Para obtener más información,consulte Puntos de conexión privados.

App Services limita el número total de flujos de cambios abiertos en un clúster determinado para todas las aplicaciones, según el tamaño del clúster. La siguiente tabla muestra las limitaciones para cada tamaño de clúster:

Tamaño del clúster
Número máximo de flujos de cambio

Nivel gratuito (M0)

5

Clústeres compartidos (M2/M5)

10

Clústeres pequeños y dedicados (M10/M20)

100

Clústeres estándar (M30/M40)

1000

Clústeres estándar (M50 - M90)

1000

Clústeres de alta potencia (M100+)

1000

Nota

App Services abre un único flujo de cambios en cada colección que esté asociada con un disparador de base de datos o una operación de sincronización de dispositivo.

Importante

Recomendación de uso

Para minimizar el número de flujos de cambio abiertos:

  • Inicie las operaciones de sincronización solo cuando sea necesario. Cierre inmediatamente cualquier flujo de sincronización abierto cuando ya no sea necesario.

  • Evite los modelos de datos que requieren sincronizar una cantidad ilimitada de colecciones.

App Services no admite ningún comando de base de datos en los SDK ni en las funciones del cliente. Sin embargo, puede ejecutar un subconjunto limitado de comandos de base de datos al conectarse a un clúster de MongoDB mediante el protocolo de conexión. Para obtener una lista de los comandos compatibles, consulte Comandos de base de datos.

Puedes tener hasta 5,000 conexiones de sincronización concurrentes. Consulta Tráfico de solicitudes.

Escribiendo:
Para mejorar el rendimiento, puede limitar el número de escrituras simultáneas en un solo documento de MongoDB. App Services no tiene un límite estricto para la cantidad de usuarios que escriben datos simultáneamente en un documento de MongoDB. Sin embargo, con más de 30 usuarios que escriben datos simultáneamente, es posible que se produzcan retrasos en la sincronización o la resolución de conflictos.
Lectura:
Los clientes frontend que leen desde un ámbito global pueden escalar más allá de decenas de miles de usuarios simultáneos.

Tip

Escalabilidad

Cuando tenga previsto contar con varios escritores simultáneos, haga que cada uno trabaje en un documento independiente.

Device Sync tiene un límite de tamaño de mensaje comprimido predeterminado de 20 MB para cualquier mensaje enviado desde la aplicación cliente. El tamaño del mensaje depende del tamaño comprimido de los cambios enviados desde el dispositivo cliente. Para obtener más información sobre los conjuntos de cambios y la compresión que utiliza Sync, consulte Conjunto de cambios.

El tamaño comprimido de un changeset no es directamente equivalente al tamaño de ningún documento en la carga. Sin embargo, en la práctica, el tamaño del changeset suele ser del mismo orden de magnitud que el tamaño de los documentos en la carga.

Este límite actúa como una contramedida contra las conexiones que consumen demasiados recursos.

Puedes ver este límite como un mensaje de error similar a failed to read: read limited at 20971521 bytes.

Puede solicitar un límite superior enviando un ticket de soporte.

Después de 30 días sin actividad, Device Sync se pausa. Consulta Rehabilitar sincronización para obtener información sobre cómo reactivar Device Sync.

Puede acceder a la mayoría de las funciones de CRUD y agregación de MongoDB versión 3.6 con el servicio MongoDB; sin embargo, App Services no admite todas las operaciones y funciones disponibles en las herramientas y clientes estándar. Para obtener una lista de las operaciones específicas de MongoDB disponibles al conectarse a través de App Services, consulte la referencia de la API de CRUD y agregación.

La sincronización de dispositivos requiere clústeres de MongoDB Atlas para ejecutar versiones específicas de MongoDB. La sincronización flexible requiere MongoDB 5.0.0 o superior.

Los puntos finales de API de datos y HTTPS requieren HTTP/1.1 o superior al realizar solicitudes.

App Services admite todas las opciones de consulta en las funciones del sistema. No admite ciertas opciones para operaciones CRUD ejecutadas desde funciones de usuario. Para obtener una lista de las opciones disponibles al conectarse a MongoDB a través de App Services, consulte Opciones de consulta.

Las consultas de MongoDB ejecutadas a través de App Services pueden devolver un máximo de 50,000 documentos. Si necesita devolver más documentos, considere paginar su consulta.

App Services limita el tráfico de solicitudes a los siguientes valores predeterminados:

Los servicios de aplicación pueden gestionar solicitudes muchas veces por encima de los límites anteriores. Sin embargo, estos límites se establecen para garantizar que las aplicaciones escalen de manera responsable y para prevenir ataques DOS y cargos no deseados.

Puede solicitar un límite superior enviando un ticket de soporte.

App Services utiliza la agrupación de conexiones para reducir la sobrecarga que supone abrir y cerrar conexiones con frecuencia entre solicitudes y ejecuciones de desencadenadores. Las conexiones se abren según sea necesario. La agrupación de conexiones depende de varios factores:

  • Nivel de clúster. Cuanto mayor sea el nivel del clúster, más conexiones estarán disponibles en el pool.

  • Modo de implementación. Las implementaciones globales utilizan varios servidores en cada región y, por lo tanto, cuentan con un grupo de conexiones más amplio.

  • Servicios. Cada servicio tiene un pool de conexiones independiente, por lo que la cantidad de servicios en tu aplicación no afecta el número de conexiones disponibles.

App Services aplica una 25restricción de tamaño de archivo máximo de MB en el alojamiento estático.

Importante

El alojamiento estático está obsoleto. Másinformación.

Volver

Facturación