Sistema Sorteos Empresarial

Sistema Sorteos Empresarial
SISTEMA DE SORTEO | Arquitectura Asíncrona de Alto Rendimiento
Aplicación full-stack que resuelve el problema de gestionar inscripciones
masivas en eventos corporativos sin comprometer performance ni seguridad.
Implementa arquitectura desacoplada con message broker para procesamiento
distribuido de tareas pesadas.
Arquitectura Backend:
– Django REST Framework – API RESTful con serializers optimizados
– PostgreSQL – Base de datos relacional con índices estratégicos
– Redis – Message broker + backend de resultados + caché de sesiones
– Celery – Workers asíncronos para envío masivo de emails
– JWT – Autenticación stateless con refresh tokens
– Algoritmo secrets.SystemRandom() para sorteos criptográficamente seguros
Arquitectura Frontend:
– Vue.js 3 Composition API – Reactividad con <script setup>
– TypeScript strict mode – Type safety en todo el proyecto
– Pinia – State management centralizado
– Axios interceptors – Manejo automático de tokens JWT
– Validación cliente/servidor – Double-layer security
Sistema de Seguridad:
✓ Verificación email en dos pasos (código 6 dígitos + contraseña)
✓ Tokens de un solo uso con expiración configurable (15 min default)
✓ Contraseñas hasheadas con bcrypt (cost factor 12)
✓ CORS configurado por dominio
✓ Rate limiting en endpoints críticos
✓ Separación completa de roles (participante/admin)
Flujo de Alta Concurrencia:
Usuario se registra → Django responde en <50ms → Redis encola tarea de email
→ Celery worker procesa en background → Usuario recibe código → Verificación
→ Estado actualizado en PostgreSQL
Motor de Sorteo:
– Selección aleatoria usando secrets.SystemRandom() (CSPRNG)
– Filtrado automático: solo participantes verificados
– Registro de auditoría con timestamp
– Exportación de resultados en JSON/CSV
Ideal para empresas que necesitan manejar 10K+ inscripciones simultáneas
con garantías de integridad, trazabilidad y experiencia de usuario fluida.