es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Existe alguna forma de asegurar que un servicio/aplicación que he desplegado en Heroku, siga funcionando durante una actualización?

Actualmente estoy trabajando en implementar un servicio en Heroku. El servicio consulta una api y utiliza el método regular setInterval en Node.js para obtener nueva información (no puedo usar un websocket ya que la api que estoy utilizando no es mía).

Periódicamente, al igual que cualquier programa o aplicación que alguien desarrolle, necesita ser actualizado. Mi pregunta es ¿cuál es la mejor manera de actualizar mi aplicación en heroku para que cuando publique un nuevo cambio en producción no detenga el funcionamiento de la aplicación? La razón es porque no quiero perder nuevos datos de la api.

Mi primera idea es tener algún tipo de redundancia en la que haya al menos 2 servidores que ejecuten la aplicación y mientras uno se actualiza, el otro se ejecuta y viceversa. Sin embargo, no estoy seguro si esto se hace automáticamente por heroku, o si no es así, cómo puedo asegurarme de configurar algo así para no perder ni siquiera un fragmento de datos durante una actualización. No es una opción para nosotros perder ni siquiera un solo dato nuevo de la API.

¿Existen otras formas de lograr esto?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Afortunadamente, Heroku ofrece una forma de garantizar que su aplicación no se interrumpa durante una actualización. La función Estrategias de implementación de Heroku le permite implementar su aplicación de manera que asegure que no haya tiempo de inactividad. Específicamente, puede utilizar la estrategia de implementación azul-verde que implica ejecutar dos versiones de su aplicación de forma paralela. Cuando implemente una nueva versión de su aplicación, la versión nueva se implementa en la versión “verde”, mientras que la versión “azul” continúa en ejecución. De esta manera, puede garantizar que su aplicación siempre esté en funcionamiento y que no se pierda ningún dato durante una actualización.

Comments are closed.