Een geplande taak is een taak die automatisch op een vast tijdstip of op een herhalend interval draait, zonder dat iemand op start drukt. Draai elke nacht om 2 uur een back-up. Stuur elke maandag om 8 uur een factuuroverzicht. Het tijdstip komt, het werk gebeurt, en je team wordt wakker met het resultaat.
Zie het als een koffiezetapparaat met timer. Je vult hem de avond ervoor en zet hem op 6:30. Jij slaapt nog als hij zet, maar de koffie staat klaar zodra je binnenloopt. Een geplande taak is die timer voor je software: het werk draait op de klok, niet op iemand die eraan denkt. Op Unix-systemen is dit meestal een cron job, vastgelegd in een kort regeltje dat precies aangeeft wanneer hij draait.
De trigger is hier de tijd zelf, en dat onderscheidt hem van event-gebaseerde automatisering. Een geplande trigger is het deel dat de klok in de gaten houdt, en geplande taken combineren goed met batchverwerking, waarbij een stapel werk in één run buiten kantooruren wordt afgehandeld in plaats van item voor item.
Een paar dingen geven gedoe. Tijdzones tellen mee: een taak die op “2 uur” staat, moet duidelijk zijn over welke zone, anders schuift de zomertijd hem een uur op. En twee runs moeten niet overlappen, dus als de taak van vannacht nog draait wanneer die van vanavond start, wil je dat hij wacht in plaats van zich op te stapelen. Die kleine details zijn het verschil tussen een taak die je vertrouwt en een die je moet bewaken.
Bij TopDevs gebruiken we geplande taken voor het stille achtergrondwerk, rapporten, syncs en opschoonacties, en we bouwen er altijd een faalmelding in zodat een overgeslagen run nooit ongemerkt voorbijgaat.