GoでGraceful Shutdown
サンプルコード
package main import ( "fmt" "os" "os/signal" "syscall" ) func main() { // シグナルを受け取るチャネル shutdownSignal := make(chan os.Signal, 1) // 監視するシグナルを登録 (SIGINT, SIGTERMなど) signal.Notify(c, os.Interrupt, syscall.SIGTERM) // シグナルを受信するまで待つ <-shutdownSignal // プログラム終了時のクリーンアップ処理など }