flows: web_request: name: "Request Web" description: "Usuario accede al frontend via nginx" color: "#3b82f6" speed: 1.5 path: [nginx, frontend] api_request: name: "API Request" description: "Request del frontend al backend con auth y DB" color: "#22d3ee" speed: 1.4 path: [nginx, backend, db, backend, nginx] auth_flow: name: "Autenticación" description: "Login/registro pasando por auth service" color: "#a855f7" speed: 1.3 path: [nginx, auth, ninja-redis, auth, nginx] cached_query: name: "Consulta con Cache" description: "Backend consulta Redis antes de ir a DB" color: "#f59e0b" speed: 1.5 path: [nginx, backend, ninja-redis, backend, db, backend, nginx] background_job: name: "Tarea en Background" description: "Celery beat agenda tareas, worker las ejecuta" color: "#ec4899" speed: 1.8 path: [celery-beat, ninja-redis, celery-worker, db] data_collection: name: "Recolección de Datos" description: "Collector guarda en DB e invalida cache en Redis" color: "#10b981" speed: 2.0 path: [collector, db, collector, ninja-redis] settings: particle_size: 2 trail: true trail_opacity: 0.3 glow: true max_particles: 50