Я хочу разработать клиент-серверное приложение Qt5/C++, используя удаленные вызовы процедур (RPC).Удаленный вызов процедуры - услуга, предлагаемая клиентом
Идея: Сервер прослушивает входящие соединения нескольких клиентов. Клиенты предлагают набор процедур/услуг, которые сервер может вызывать для сбора данных от клиентов и информирования других клиентов об изменениях.
И вот улов: RPC-библиотеки, которые я видел до сих пор, похоже, ожидают, что сервер предложит услугу, которую могут позвонить клиенты. Но я хочу сделать наоборот. Клиенты должны предлагать услуги, которые может вызывать сервер. Направление важно, потому что я хочу включить перенаправление портов только на стороне сервера, а не на стороне клиента.
В ЛИЭСЕ я проверил это:
- QtRpc2 (https://github.com/brendan0powers/QtRpc2)
- КПГР (http://www.grpc.io)
Вопросы:
- Есть ли причина этого ЛИЭС предлагать услуги только на стороне сервера?
- Возможно, я пропустил эту часть в документации?
- Есть ли RPC-библиотека, предлагающая услуги клиентской поддержки?
Пожалуйста, проверьте: Это звучит, как вы хотите подключается к B и предлагает услуги B. – user4581301
Да, вот как это должно работать. – Paul
Не знаю ни одной руки. Вы считали, что A открывает туннель для B, B подключается и запрашивает службы от A до туннеля? – user4581301