Mejores Prácticas de Entrega
Un resumen condensado de las 25 prácticas de entrega empresarial más importantes para equipos de Python, extraídas de cada página de esta sección.
-
Pipelines de PR y de lanzamiento separados: El PR prueba el código; el lanzamiento promueve el SHA de la imagen inmutable - Gestión de Lanzamientos.
-
Etiquetar imágenes con el SHA de git: Nunca desplegar etiquetas flotantes en producción.
-
Migraciones de expansión-contracción: Los pasos de esquema compatibles con versiones anteriores permiten la reversión - Estrategias de Reversión.
-
Migración antes del cambio de tráfico: Ejecutar migraciones de Alembic/Django en el trabajo de lanzamiento antes de que aumenten los pesos de canary.
-
Documentar el orden de despliegue de API a workers: Por servicio en el archivo
docs/deploy-order.mddel repositorio. -
Pausar workers en pasos de esquema incompatibles: Evitar mensajes de Celery venenosos.
-
Staging refleja los tamaños de los pools de producción: Detectar el agotamiento del pool de SQLAlchemy antes de producción - Entornos y Promoción de Configuración.
-
Pruebas de humo de la ruta de escritura y lectura:
/health/readypor sí solo es insuficiente. -
Feature flags desactivados por defecto: Evaluación del lado del servidor - Feature Flags y Entrega Progresiva.
-
Kill switches en runbooks: Desactivar el flag antes de la reversión de la imagen cuando la ruta está aislada.
-
Retirar flags después de 30 días estables: Los flags obsoletos son deuda de regresión.
-
Canary al 5-10% primero: Mantener durante 10+ minutos con barreras de p95.
-
Controlar la profundidad de la cola y la espera del pool: No solo la tasa de HTTP 5xx.
-
Abortar automáticamente canary en quema de SLO: Conectar el análisis al controlador de despliegue.
-
Blue-green mantiene la reversión en caliente: Intercambio rápido cuando se omite canary.
-
Anotar dashboards con el SHA del despliegue: Correlacionar incidentes en minutos.
-
Seguimiento de DORA por servicio: Frecuencia, tiempo de entrega, CFR, MTTR - Métricas DORA.
-
Etiquetar incidentes con el SHA del despliegue: Tasa de fallo de cambio precisa.
-
Vincular la velocidad de despliegue al presupuesto de errores: Congelar características cuando el presupuesto es bajo.
-
Notas de lanzamiento incluyen migración y reversión: Soporte lee
#releasesen Slack. -
Índices CONCURRENTLY en tablas grandes de Postgres: Evitar bloqueos de migración.
-
Conservar 10 etiquetas de imagen de producción:
rollout undorequiere historial. -
API y worker con el mismo Python y hash de bloqueo: La desviación en tiempo de ejecución causa errores sutiles.
-
Pre-registrar experimentos A/B: Las barreras de seguridad abortan variantes dañinas - Pruebas A/B y Experimentación.
-
Simulacro de reversión trimestral: El MTTR de DORA es una habilidad practicada.
Preguntas Frecuentes
¿Qué tan rápido deberían desplegar los equipos de Python?
Tan rápido como lo permitan las migraciones y el CFR. Diario con flags es común; esquemas destructivos semanalmente es normal.
¿Necesitamos Argo Rollouts?
Cualquier canary con análisis de métricas funciona: Flagger, Spinnaker, pesos personalizados de ALB.
¿Cuándo saltarse el tren de lanzamiento?
Cuando el presupuesto de errores se agota, se abre SEV1 o la prueba de carga en staging falló.
¿Cómo manejar lanzamientos de librerías vs servicios?
Las librerías usan semver bajo demanda; los servicios fijan el lockfile por tren.
¿Cuál es el tiempo mínimo de espera de canary?
10 minutos para alto tráfico; más tiempo para bajo tráfico hasta que existan muestras estadísticas.
¿Deberían los notebooks usar el mismo tren?
No - los trabajos batch se promueven por separado con la aprobación del propietario de los datos.
¿Cómo documentar el orden de despliegue?
Markdown en el repositorio con secciones de pausa de API, pausa de workers, migración y reversión.
¿uv reemplaza la disciplina de lanzamiento?
uv acelera CI; las barreras de pruebas, migraciones y canary siguen siendo obligatorias.
¿Quién es responsable de la rotación del capitán de lanzamiento?
El gerente de ingeniería programa; cada miembro del escuadrón sirve trimestralmente.
¿Cómo vincular la entrega con el producto?
Compartir tendencias DORA y temas de incidentes en las revisiones del roadmap - Contribuciones al Roadmap.
Relacionado
- Gestión de Lanzamientos - versionado y trenes
- Feature Flags y Entrega Progresiva - exposición segura
- Estrategias de Reversión - opciones de mitigación
- Métricas DORA - medición
- Pipelines CI/CD - profundidad del pipeline
Versiones de Stack: Esta página fue escrita para Python 3.14.0 (estable 3.14, mantenimiento 3.13), FastAPI 0.115+, Django 5.2, Flask 3.1, Pydantic 2, PyTorch 2.6+, pandas 2.2+, Polars 1.x, ruff 0.9+, y uv 0.6+.