От чего зависит количество CQ на сервере RPC? - PullRequest
0 голосов
/ 13 июня 2019

Я прочитал код функции ServerBuilder :: BuildAndStart () в src / cpp / server / server_builder.cc, который включает следующий код:

  // cqs_ contains the completion queue added by calling the ServerBuilder's
  // AddCompletionQueue() API. Some of them may not be frequently polled (i.e by
  // calling Next() or AsyncNext()) and hence are not safe to be used for
  // listening to incoming channels. Such completion queues must be registered
  // as non-listening queues
  for (auto it = cqs_.begin(); it != cqs_.end(); ++it) {
    grpc_server_register_completion_queue(server->server_, (*it)->cq(),
                                          nullptr);
  }

Это означает, что RPC-сервер создает несколько CQ во времяинициализация.Так что же определяет количество созданных CQ?Необходимо ли, чтобы каждый CQ обрабатывал запросы от разных клиентов?

...