El rendimiento de Athento depende de la carga que experimenten los recursos del servicio (nodos, hardware -CPU y RAM-, base de datos, ElasticSearch, repositorios, servidor de aplicaciones, ancho de banda, latencias, caché, etc.). Esta carga proviene una gran variedad de orígenes:
- solicitudes de usuario desde la interfaz
- solicitudes a través de la API
- consultas y búsquedas (colas, búsquedas, exportaciones).
- cargas y descargas masivas
- procesos y flujos
- integraciones
- operaciones o automatismos que se ejecutan sobre los documentos
- tareas programáticas y otros procesos masivos
- generación de documentos
- conversión de formatos
- extracción de texto
Los planes de Athento están diseñados y probados para garantizar un performance acorde a los límites del plan, pero existen ciertas características de la configuración de implementación de su Athento que tienen un impacto específico sobre el rendimiento del servicio. El objeto de este artículo es ayudarte a que mantenga su plataforma organizada y configurada de forma que pueda garantizar la salud y el crecimiento de la plataforma.
IMPORTANTE:
Athento no puede garantizar el adecuado performance de su servicio
cuando el cliente haga caso omiso de los límites y recomendaciones
establecidas.
A continuación, se recogen los límites y recomendaciones a nivel de volumetrias y configuraciones. Si su instalación de Athento está experimentando problemas de rendimiento, le recomendamos revisar detenidamente cada una de las siguientes configuraciones.
Número de documentos o registros
Por normal general, el límite es el indicado en su plan. Athento cuenta con benchmarks de rendimiento en instancias con 600 millones de documentos.
Distribución de los documentos/registros
Nivel | Límite máximo recomendado |
A nivel de entorno | Hasta 300 millones |
Equipo o team | Hasta 30 millones |
A nivel de espacio o serie | Hasta 10 millones por espacio |
Cantidad de espacios por equipo | Hasta 500 |
Cantidad de formularios por equipo | Hasta 250 |
¿Qué puedo hacer para mantener los límites?
- Establezca Políticas de Retención y Archivo de documentos
- Distribuya sus documentos en diferentes equipos o teams
- Dentro de un team, distribuya sus contenidos en diferentes espacios.
- Si supera los 50M de documentos, es necesario el uso de ElasticSearch.
Número de valores de campos
Athento cuenta con benchmarks de 1 billón de valores de campos.
Limites a nivel de campos
Nivel | Límite máximo recomendado |
Número de formularios | Hasta 1000 |
Número de campos por formulario | Hasta 200 |
Número de plantillas por formulario | Hasta 300 |
Número de categorías por formulario | Hasta 50 |
Número de reglas de visualización por categoría en un formulario (automations de categoría) | Hasta 1 |
Número de reglas de visualización por campo en un formulario (automations de campo) | Hasta 1 |
¿Qué puedo hacer para mantener los límites?
- Divida sus campos en formularios. Utilice un formulario principal y formularios auxiliares para guardar datos de modo que ningún formulario sea excesivamente grande.
- Dentro de un formulario, distribuya sus campos en categorías, a ser posible, no precargadas.
- Utilice reglas de visualización por categorías en lugar de por campos individuales siempre que pueda.
- Marque las categorías como no cargadas cuando tenga muchas.
- Utilice Diccionarios en lugar de campos Choice Default.
- Active OnlineSearch cuando las opciones de un desplegable superen 50 ítems.
Colas o bandejas
Nivel | Límite máximo recomendado |
Bandejas publicadas por dashboard | Hasta 30 |
Elementos por bandeja o cola | Hasta 500 |
Columnas por cola | Hasta 15 |
¿Qué puedo hacer para mantener bandejas óptimas?
- Publique en el dashboard sólo las bandejas que requieren de intervención de usuarios
- Utilice búsquedas guardadas en lugar de bandejas
- Evite el uso de máscaras complejas y si estas son imprescindibles, solicite el uso de Redis.
Búsquedas
Para garantizar el performance de las búsquedas - en instancias con volumetrías superiores a 50 millones de documentos-, le recomendamos:
- Acotar las búsquedas por espacio y/o por formulario
- Evite el uso de búsquedas de texto no acotadas
- Verifique que sus consultas están optimizadas
- El uso de índices de PostgreSQL y el uso de Elasticsearch
Operaciones, automatismos y comandos
Por norma general, el límite de automatismos es el límite de Unidades de Automatización de su plan.
Nivel | Límite máximo recomendado |
A nivel de espacio | Hasta 50 |
A nivel de documento | Hasta 30 |
Tiempo de ejecución por operación | Hasta 5 segundos |
¿Qué puedo hacer para no afectar el performance con automatismos?
- No abuse de operaciones en fase on-load, ya que afectan los tiempos de carga de documentos.
- Garantice la calidad y le eficiencia de sus operaciones personalizadas. Puede utilizar el QualityChecker de la biblioteca de operaciones.
- Vigile los tiempos de ejecución de sus operaciones custom.
- En la medida de lo posible, ejecute comandos y tareas programáticas fuera de horario laboral.
- Tenga en cuenta que algunos automatismos de generación de documentos o conversión de formatos consumen muchos recursos.
- Si trabaja con grandes volumenes, pregunte por la posibilidad de paralelizar o ejecutar los automatismos en background.
- Desarrolle test unitarios para sus operaciones custom.
- Siempre que pueda, utilice la funcionalidad del producto en lugar de un automatismo.
Consulte también Buenas prácticas para el desarrollo de software personalizado en Athento
Exportaciones, importaciones, migraciones y otras bulk taks
Nivel | Límite máximo recomendado |
Exportaciones que ocurren cada 60 minutos o menos | Máx. 1.000 registros |
Exportaciones que ocurren una vez al día | Máx. 50.000 registros |
¿Qué puedo hacer para no afectar el performance con tareas masivas?
- Si utiliza un sistema de BI, haga exportaciones de datos incrementales. Siga las recomendaciones en ¿Cómo configurar la exportación de un reporte para integración con un sistema BI?
- Realice las tareas masivas en horarios no laborables.
- Uso de funciones SQL nativas de exportación.
- Divida sus cargas/descargas en paquetes más pequeños.
- Exporte solo las columnas que necesite.
Peticiones de usuarios desde la interfaz del producto
Por defecto, el límite de usuarios es el establecido por su plan. Los usuarios de su plan son usuarios nominales, concurrentes.
Peticiones vía API
Por defecto, el límite de peticiones es el límite de llamadas a la API incluidos en su plan. ¿Qué son las llamadas a la API que vienen incluidas en mi plan?
Nivel | Límite máximo recomendado |
Llamadas al día | 5% de la capacidad del mes. |
Llamadas por segundo | 3 requests por segundo por usuario. |
¿Qué puedo hacer para no afectar el performance con llamadas a la API?
- Optimice sus consultas
- Distribuya sus peticiones en el tiempo
- Utilice otros mecanismos para migraciones y si no puede, haga las cargas fuera de horario laboral
Artículos relacionados
Comentarios
0 comentarios
Inicie sesión para dejar un comentario.