Explorando el Rendimiento de DataSunrise Bajo Condiciones de Alto Tráfico
DataSunrise es frecuentemente consultado sobre su rendimiento a la hora de manejar volúmenes de tráfico que superan los límites típicos. Los clientes están particularmente preocupados por si DataSunrise dejará caer tráfico, experimentará retrasos o manejará la situación de manera diferente. Esta publicación profundiza en cómo DataSunrise afronta tales escenarios.
Capacidad Operativa y Métricas de Rendimiento
Para comprender cómo DataSunrise funciona bajo presión, es crucial entender sus umbrales operativos en diversas configuraciones de servidores. Aquí están las máximas operaciones por segundo para diferentes instancias de Amazon EC2, lo cual impulsa el uso de la CPU al 100% para tareas de proxy y auditoría:
- m5.8xlarge: 24,500 operaciones/seg
- m5.4xlarge: 18,700 operaciones/seg
- m5.2xlarge: 15,350 operaciones/seg
- m5.xlarge: 7,800 operaciones/seg
- m5.large: 3,900 operaciones/seg
Estos resultados se basan en nuestras pruebas utilizando RDS Postgres en una instancia m5.2xlarge equipada con almacenamiento de 12,000 IOPS.
Identificación y Gestión de Cuellos de Botella
Cuellos de Botella del Sistema de Auditoría
Si el Almacenamiento de Auditoría no puede seguir el ritmo de un pico de tráfico, DataSunrise utiliza una cola interna dentro de su sistema de Diario de Auditoría, capaz de manejar varios miles de eventos dependiendo de la configuración del sistema (consulta el parámetro AuditHighWaterMark). Si los picos de tráfico superan la capacidad de la cola, los eventos pueden ser rechazados. Sin embargo, este comportamiento por defecto puede modificarse para que DataSunrise se detenga y espere hasta que haya espacio en la cola para registrar nuevos eventos (consulta el parámetro AuditPutThreadQueueWait). Durante esta espera, el tráfico de aplicaciones puede detenerse temporalmente, generalmente por solo milisegundos o segundos, dependiendo del rendimiento del sistema de auditoría.
Para optimizar tu sistema de auditoría, considera lo siguiente:
- Mejorar el rendimiento de la base de datos seleccionando servidores con más CPU y memoria.
- Revisar la configuración de tu red ya que la latencia afecta significativamente el rendimiento; idealmente, el host de DataSunrise y el Almacenamiento de Auditoría deberían estar en la misma subred.
- Revisar y ajustar tus reglas y eventos de auditoría para enfocarte solo en aquellos críticos para tus políticas de cumplimiento.
Cuellos de Botella del Sistema de Análisis de DataSunrise
Si tu sistema de auditoría funciona correctamente, el uso de la CPU se convierte en el próximo cuello de botella potencial. El modo de manejo – pasivo o activo – influye enormemente en el impacto en la aplicación:
- Modo Pasivo. Aquí, el tráfico se maneja de manera asincrónica en un grupo separado de hilos antes de ser reenviado al servidor. El tráfico se almacena temporalmente en una cola interna, lo que puede amortiguar los picos y potencialmente mejorar el rendimiento de la aplicación (consulta los parámetros MessageHandlersGlobalQueueHighWaterMark y MessageHandlersLocalQueueHighWaterMark). Si esta cola se llena, DataSunrise dejará de analizar el nuevo tráfico en esa conexión, y recibirás una alerta en el Monitor de Eventos. Esta situación no degradará el rendimiento de la aplicación, pero algunos eventos pueden ser omitidos en la auditoría.
- Modo Activo. En este modo, el tráfico no puede manejarse de manera asincrónica ya que DataSunrise debe tomar decisiones en tiempo real sobre las operaciones. No se utilizan colas y el rendimiento se correlaciona directamente con la capacidad de la CPU. Durante los picos de tráfico, DataSunrise procesa lo máximo posible, lo que puede aumentar la latencia en las consultas de tu aplicación.
Entender estos mecanismos y configuraciones puede ayudarte a optimizar la configuración de DataSunrise para manejar mejor los altos volúmenes de tráfico y prevenir posibles cuellos de botella en el rendimiento.
Para leer más sobre cómo elegir la base de datos adecuada para el almacenamiento de auditoría y mejorar su rendimiento, considera nuestra guía detallada Cómo Elegir la Base de Datos para el Almacenamiento de Auditoría: Un Análisis de Rendimiento.