Suena obvio por escrito, y aun así es la razón por la que un número sorprendente de montajes caseros deja de funcionar sin avisar.
Lo que no funciona
- Una pestaña del navegador con un temporizador — cerrada, suspendida o ralentizada por el navegador tras unos minutos en segundo plano
- Un script en tu portátil — la tapa se cierra
- Solo una app en el móvil — el sistema suspende el trabajo en segundo plano de forma agresiva, y es a propósito
- Un cron en una máquina que no está siempre encendida, que son casi todas las que la gente tiene
Cada una funciona cuando la pruebas, y ahí está la trampa: la pruebas mirando. El fallo solo ocurre cuando no mira nadie.
Lo que la tarea necesita de verdad
- 1Un proceso despierto cada minuto del día
- 2Un registro de lo que toca publicar que sobreviva a un reinicio
- 3Una forma de detectar un fallo y reintentar con pausas crecientes
- 4Una forma de avisar a una persona cuando se ha rendido
Por eso el alojamiento importa más de lo que parece
Algunas plataformas limitan las tareas programadas del plan gratuito a una vez al día. Una herramienta que se dispara una vez al día no programa: recuerda. Conviene comprobarlo antes de construir encima.
Un servidor pequeño siempre encendido con un temporizador de un minuto cuesta unos pocos euros al mes y elimina toda una categoría de problemas.
