0Pricing
Go Academy · Lesson

Graceful Job Shutdown

Stop jobs cleanly.

Stopping Jobs Cleanly

A scheduler that is killed mid-job can corrupt data or leave half-finished work. Graceful shutdown means: stop accepting new runs, let in-flight jobs finish (up to a deadline), then exit.

Listening for Signals

Catch OS signals like SIGINT (Ctrl+C) and SIGTERM (orchestrator stop) so you can shut down on purpose.

sig := make(chan os.Signal, 1)
signal.Notify(sig, syscall.SIGINT, syscall.SIGTERM)
<-sig
fmt.Println("shutting down")

All lessons in this course

  1. Time-Based Scheduling
  2. The robfig/cron Library
  3. Tickers for Intervals
  4. Graceful Job Shutdown
← Back to Go Academy