У меня работает безголовый сервис с несколькими репликами. При попытке проверить балансировку нагрузки на стороне клиента с помощью циклического перебора я вижу, что все запросы попадают в одну и ту же реплику. Настройка клиента выглядит следующим образом:
conn, err := grpc.Dial(
address,
grpc.WithInsecure(),
grpc.WithDefaultServiceConfig(`{"loadBalancingPolicy":"round_robin"}`),)
Я проверил несколько обслуживаемых конечных точек. Я также подтвердил, что служба разрешает эти несколько IP-адресов, но каким-то образом она подключается только к первому модулю в этом списке. MAX_CONNECTION_AGE
установлен на 30 секунд на стороне сервера, чтобы гарантировать, что клиент время от времени повторно подключается в случае увеличения масштаба. Я следил за многочисленными статьями о том, как это настроить, но это просто не работает. Что мне не хватает?