2017-10-12 27 views
0

한 번에 다른 소켓에서 수신 대기하는 가능성을 들여다보고 있습니다. 동일한 fd_set에서 다중 소켓 연결을 처리하는 것은 Linux에서 사용될 수 있습니다. 나는 gRPC가 epoll 기반 pollset을 가지고이 기능을 지원하는 것을 보았다.한 번에 여러 소켓에서 들어오는 패킷에 대한 gRPC 폴링

https://github.com/grpc/grpc/blob/18df25228cfa1f97fc5cca9176fbaef64c0e4221/doc/epoll-polling-engine.md

나는 비동기 모드에서 다른 서비스를 호출하고 동시에 서비스를 제공 할 계획입니다. 따라서 비동기 응답 및 서버 소켓을 기다리는 클라이언트 소켓으로 구성된 폴링 세트를 고려하려고했습니다. gRPC에서 가능할 것 같습니다. 나는 poll-set의 구성을 노출시키는 gRPC API에서 무엇이든 찾을 수 없었다.

따라서 제 질문은 gRPC의이 기능을 사용하는 방법입니다.

gRPC가 자동으로 관리합니까? 이 경우 들어오는 메시지를 어떻게 기다릴 수 있습니까?

답변

0

클라이언트와 서버 모두 동일한 CompletionQueue를 사용해야합니다. 들어오는 메시지를 기다리려면 다음 호출이 필요합니다.