

# Comprender el tiempo de implementación de la pila
<a name="stack-deployment-time"></a>

Al crear, actualizar o eliminar una pila, CloudFormation aprovisiona cada recurso de la plantilla y notifica que la operación de pila se ha completado cuando los recursos están listos para atender el tráfico. Este tema describe cómo CloudFormation aprovisiona una pila, qué afecta a la duración de una operación de pila y cómo acortar el tiempo de implementación.

**Topics**
+ [Cómo CloudFormation aprovisiona una pila](#how-cloudformation-provisions-a-stack)
+ [¿Qué afecta al tiempo de implementación?](#what-affects-deployment-time)
+ [Formas de acortar el tiempo de implementación](#ways-to-shorten-deployment-time)
+ [Recursos relacionados](#stack-deployment-time-related-resources)

## Cómo CloudFormation aprovisiona una pila
<a name="how-cloudformation-provisions-a-stack"></a>

CloudFormation lee las dependencias entre los recursos de la plantilla. Un recurso que hace referencia a otro recurso, a través de `Ref`, `Fn::GetAtt` o `DependsOn`, se aprovisiona después del recurso al que hace referencia. Los recursos que no dependen unos de otros se aprovisionan en paralelo.

Para cada recurso, CloudFormation aplica la configuración del recurso y, a continuación, confirma que el recurso está listo para atender el tráfico. CloudFormation avanza tan pronto como cada recurso está listo, por lo que los recursos dependientes comienzan lo antes posible. Como resultado, las pilas con cadenas de dependencia más largas son las que presentan la mayor mejora. Cuando todos los recursos de la pila estén listos, CloudFormation notifica que la operación de pila ha finalizado.

Este comportamiento se aplica automáticamente a las operaciones de pila. No es necesario realizar cambios en las plantillas ni establecer parámetros.

## ¿Qué afecta al tiempo de implementación?
<a name="what-affects-deployment-time"></a>

Cadenas de dependencia  
La cadena más larga de recursos que dependen unos de otros establece el tiempo mínimo para una operación de pila. Los recursos que no forman parte de esa cadena se aprovisionan en paralelo y, por lo general, no se suman al tiempo total.

Recursos que tardan más en estar listos  
Las cargas de trabajo que incluyen recursos como las instancias de bases de datos de Amazon RDS, los equilibradores de carga de Elastic Load Balancing, las puertas de enlace NAT o las distribuciones de Amazon CloudFront pasan la mayor parte del tiempo de implementación esperando a que esos recursos estén listos para atender el tráfico.

Resultados que hacen referencia a los atributos de los recursos  
Si el resultado de una pila hace referencia a un atributo de recurso, por ejemplo con `Fn::GetAtt`, CloudFormation espera a que el valor del atributo esté disponible antes de completar la operación de la pila. Esta espera puede agregar tiempo a la operación.

## Formas de acortar el tiempo de implementación
<a name="ways-to-shorten-deployment-time"></a>
+ **Usar el modo exprés para la iteración del desarrollo.** El modo exprés completa las operaciones de pila en cuanto CloudFormation aplica la configuración de recursos, y los recursos continúan preparándose en segundo plano. Para obtener más información, consulte [Modo rápido](cloudformation-express-mode.md).
+ **Agrupar los recursos según la frecuencia con la que cambian.** Coloque los recursos que tardan más en estar listos, como las bases de datos, en pilas separadas de los recursos que actualiza con frecuencia. Por lo tanto, las actualizaciones de la pila que cambia con frecuencia no incluyen los recursos que tardan más tiempo en ejecutarse.
+ **Eliminar las dependencias que no necesite.** Declare `DependsOn` solo cuando un recurso deba esperar a otro. Un menor número de dependencias permite a CloudFormation aprovisionar más recursos en paralelo.
+ **Hacer referencia a los atributos de los recursos en los resultados solo cuando los necesite.** Los resultados que hacen referencia a los atributos de los recursos pueden extender una operación de pila hasta que esos valores estén disponibles.

## Recursos relacionados
<a name="stack-deployment-time-related-resources"></a>
+ [Funcionamiento de CloudFormation](cloudformation-overview.md)
+ [Modo rápido](cloudformation-express-mode.md)
+ [Actualización de pilas de CloudFormation con conjuntos de cambios](using-cfn-updating-stacks-changesets.md)