|
|
042acd6207
|
OPCIÓN C + A1: Consolidación técnica + orjson
C1: Materialized view part_vehicle_preview (creación en progreso)
- Migración v3.3_materialized_view.sql
- catalog_service.py y dashboard/server.py ahora usan la MV
- Script refresh_part_vehicle_preview.py + warm_vehicle_cache.py actualizado
C2: Fix cache warming script (autónomo)
- Auto-re-ejecuta con sudo -u postgres si peer auth falla
- Args CLI: --dsn, --batch-size, --ttl, --dry-run
C3: CSS dinámico residual extraído
- sidebar.js → sidebar.css (nuevo)
- pos-utils.js → common.css (nuevo)
- Links agregados a 14 templates POS
C4: Script de load testing básico
- scripts/load_test.py: métricas p50/p95/p99, throughput, errores
C5: Documentación actualizada
- FASES_IMPLEMENTADAS.md: test count real, FASE 7 completa
- performance_audit_2026.md: anexo post-FASE 7, métricas actualizadas
A1: Serialización orjson
- pos/json_provider.py: DefaultJSONProvider con orjson.dumps/loads
- Aplicado a POS app y Dashboard server
- Fix indentation error en pos_bp.py
Tests: 73/73 pasando
|
2026-04-27 09:36:03 +00:00 |
|
|
|
175dda6212
|
FASE 7: Quick Wins de Performance — Optimización Fase 1
Cambios implementados:
1. Nginx:
- gzip on (compresión JS/CSS/JSON)
- Cache headers para assets estáticos (6M)
- Proxy buffer tuning (10s connect, 30s read)
2. Frontend catalog.js:
- Reemplazados 8x innerHTML += en loops por map+join
- Event delegation en breadcrumb y cart (elimina memory leak)
- AbortController en apiFetch (evita race conditions)
- sessionStorage cache para years-all y brands por modo
3. Frontend templates HTML:
- defer en todos los scripts POS (mejora First Paint)
4. Dashboard JS:
- innerHTML += fix en dashboard.js y cuentas.js
5. Base de datos:
- Índice parcial idx_wi_part_stock_positive en warehouse_inventory
6. Documentación:
- docs/performance_audit_2026.md con análisis completo y roadmap
Tests: 73/73 pasando (compat + fase3 + fase5 + fase6)
|
2026-04-27 07:19:37 +00:00 |
|