Arquitectura del Sistema
Construido con tecnologías modernas
Stack Tecnológico
aioflare está construido sobre Next.js, con renderizado del lado del servidor y rendimiento optimizado. Supabase impulsa el backend: autenticación, operaciones de base de datos y funciones en tiempo real.
Base de Datos
aioflare usa Supabase PostgreSQL como base de datos principal, con Row Level Security (RLS) aplicado a nivel de base de datos. Las políticas RLS garantizan que cada usuario solo acceda a sus propios datos, aportando una capa adicional de protección más allá de las comprobaciones a nivel de aplicación, incluso en escenarios de error.
Flujo de Cifrado
Todos los datos sensibles se cifran en el servidor antes de almacenarse. aioflare utiliza un modelo de cifrado por sobres: cada usuario tiene una clave de cifrado de datos (DEK) dedicada para cifrar su información con AES-256-GCM. La propia DEK se envuelve con AES Key Wrap (AES-KW) antes de persistirse, de modo que las claves en bruto nunca se guardan en texto plano.
Los campos cifrados incluyen tokens de API de Cloudflare, credenciales, datos de zonas, registros DNS y contexto de la cola de trabajos. El descifrado ocurre en el servidor en solicitudes autenticadas, con comprobaciones estrictas de propiedad en cada capa.
Arquitectura API
aioflare utiliza una arquitectura API RESTful con autenticación y limitación de velocidad aplicadas en todos los endpoints. La API está pensada para operaciones masivas, con manejo adecuado de errores, reintentos y límites por nivel para garantizar estabilidad y uso justo entre todos los usuarios.
Sistema de cola (Beta)
El sistema de colas de aioflare gestiona operaciones grandes de forma asíncrona con limitación de velocidad para evitar tiempos de espera y mantener la estabilidad.
Procesamiento en el servidor: las operaciones se ejecutan de forma independiente en el servidor y continúan con independencia del estado de la sesión del navegador. Recomendado para tareas a gran escala y de larga duración.
Procesamiento en el navegador: las operaciones se ejecutan durante una sesión de navegador activa con ritmo controlado. Adecuado para cargas moderadas cuando el procesamiento en servidor no está disponible.
Limitación de Velocidad
La limitación de velocidad se aplica según el nivel de suscripción para garantizar un uso justo y la estabilidad del sistema. Los límites cubren operaciones masivas, llamadas a la API y procesos concurrentes, supervisados y aplicados en tiempo real para mantener un rendimiento coherente para todos los usuarios.