v0.0.18.9 Добавлены параметры при подключении к grpc сервису в main.go
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
madipo2611 2025-08-18 21:44:50 +03:00
parent 57fb995718
commit 199e891eec

View File

@ -3,6 +3,8 @@ package main
import (
"context"
"google.golang.org/grpc"
"google.golang.org/grpc/backoff"
"google.golang.org/grpc/keepalive"
"log"
"os"
"os/signal"
@ -31,8 +33,20 @@ func main() {
}
defer db.Close()
// Подключение к gRPC серверу сообщений
grpcConn, err := grpc.Dial(cfg.GRPC.MessageServiceAddress, grpc.WithInsecure())
grpcConn, err := grpc.Dial(
cfg.GRPC.MessageServiceAddress,
grpc.WithInsecure(),
grpc.WithKeepaliveParams(keepalive.ClientParameters{
Time: 30 * time.Second, // Отправлять keepalive ping каждые 30 секунд
Timeout: 10 * time.Second, // Ждать ответ 10 секунд
PermitWithoutStream: true, // Разрешить keepalive даже без активных стримов
}),
grpc.WithConnectParams(grpc.ConnectParams{
Backoff: backoff.DefaultConfig, // Экспоненциальная backoff-стратегия
MinConnectTimeout: 5 * time.Second, // Минимальное время ожидания подключения
}),
grpc.WithDefaultServiceConfig(`{"loadBalancingPolicy":"round_robin"}`), // Политика балансировки
)
if err != nil {
log.Fatalf("failed to connect to messages gRPC service: %v", err)
}