Получение `Ошибка: 8 RESOURCE_EXHAUSTED: полученное сообщение больше, чем max (15217288 против 4194304)` в клиенте gRPC Node.js

Как увеличить максимальный размер сообщения для клиента Node.js gRPC?

Мы используем grpc, grpc-tools а также protobufjs NPM-пакеты:

  const packageDefinitions = loader.loadSync(PROTO_PATH, { includeDirs: [__dirname], longs: String, arrays: true });
  const packageObject = grpc.loadPackageDefinition(packageDefinitions);
  const client = new packageObject.Service(serviceAddress, grpc.credentials.createInsecure());

1 ответ

Решение

Для клиента и сервера gRPC мы можем указать параметры gRPC. Например, установите максимальный размер сообщения 100 Мб:

клиент

  const client = new packageObject.Service(serviceAddress, grpc.credentials.createInsecure(), {
    "grpc.max_receive_message_length": 1024 * 1024 * 100,
    "grpc.max_send_message_length": 1024 * 1024 * 100
  });

сервер

  const server = new grpc.Server({
    "grpc.max_receive_message_length": 1024 * 1024 * 100,
    "grpc.max_send_message_length": 1024 * 1024 * 100
  });
Другие вопросы по тегам