https://medium.com/the-bug-shots/synchronising-periodic-tasks-and-graceful-shutdown-with-goroutines-and-tickers-golang-9d50f1aaf097