Flightcontrol is a go package for managing a job queue. To use it you create a dispatcher, call Start, and then AddJob for each task you want the dispatcher to handle. The number of workers created by the dispatcher is configurable as is the max number of outstanding jobs.
See the documentation on godoc.