Signal handler (SIGTERM, SIGINT) через signal.NotifyContext. При получении: 1) перестать принимать новые запросы, 2) дождаться завершения in-flight запросов (context с timeout), 3) закрыть коннекты к БД, очередям. http.Server.Shutdown(ctx) делает это для HTTP. Для gRPC — GracefulStop(). Worker горутины — через context cancellation и WaitGroup.
Как реализовать graceful shutdown в Go сервисе?
Middle
190 просмотровAFK Offer AI
Что такое ~int в constraints?