|
|
|
@ -18,17 +18,17 @@ const ( |
|
|
|
|
|
|
|
|
|
func main() { |
|
|
|
|
config := config.NewConfig() |
|
|
|
|
ctx, _ := context.WithCancel(context.Background()) |
|
|
|
|
ctx, ctxCancel := context.WithCancel(context.Background()) |
|
|
|
|
srv := server.NewServer(ctx, config, topicRegistrations) |
|
|
|
|
|
|
|
|
|
//
|
|
|
|
|
signalChannel := make(chan os.Signal, 1) |
|
|
|
|
signal.Notify(signalChannel, syscall.SIGINT) |
|
|
|
|
signal.Notify(signalChannel, syscall.SIGTERM) |
|
|
|
|
defer stop(signalChannel, srv) |
|
|
|
|
defer stop(signalChannel, srv, ctxCancel) |
|
|
|
|
|
|
|
|
|
// Запуск сервера
|
|
|
|
|
go start(config, srv) |
|
|
|
|
go start(config, srv, ctxCancel) |
|
|
|
|
|
|
|
|
|
//
|
|
|
|
|
for { |
|
|
|
@ -42,19 +42,20 @@ func main() { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Остановка сервера
|
|
|
|
|
func stop(signalChannel chan os.Signal, srv *server.AuthPostmanServer) { |
|
|
|
|
func stop(signalChannel chan os.Signal, srv *server.AuthPostmanServer, cancel context.CancelFunc) { |
|
|
|
|
defer srv.GracefulStop() |
|
|
|
|
defer signal.Stop(signalChannel) |
|
|
|
|
defer cancel() |
|
|
|
|
|
|
|
|
|
log.Println("authPostmanServer stopping ...") |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Запуск сервера
|
|
|
|
|
func start(config *config.Config, srv *server.AuthPostmanServer) { |
|
|
|
|
connStr := net.JoinHostPort(config.Kafka.Host, strconv.Itoa(config.Kafka.Port)) |
|
|
|
|
func start(config *config.Config, srv *server.AuthPostmanServer, cancel context.CancelFunc) { |
|
|
|
|
defer cancel() |
|
|
|
|
|
|
|
|
|
//
|
|
|
|
|
log.Printf("authPostmanServer starting (listening to %s)\n", connStr) |
|
|
|
|
log.Printf("authPostmanServer starting (listening to %s)\n", net.JoinHostPort(config.Kafka.Host, strconv.Itoa(config.Kafka.Port))) |
|
|
|
|
|
|
|
|
|
// Запускаем прослушивание
|
|
|
|
|
if err := srv.ReadMessage(0); err != nil { |
|
|
|
|