title: Backoff handling with goroutines
body: <p>A program sends data to API using N concurrent workers as goroutines that consume data from a channel (Producer/Consumer pattern). API signals it can't handle more using HTTP status codes and demands a back-off. </p>
  
  <ol>
  <li>How do I block all workers until back-off interval has passed? </li>
  <li>Where to I put those requests that failed for retry?</li>
  </ol>
  
  <p>Any links/pointers to this presumably already solved problem are much appreciated!</p>