Я намагаюся зрозуміти protobuf та gRPC та те, як я можу використовувати обидва. Не могли б ви допомогти мені зрозуміти наступне:
- Беручи до уваги модель OSI , де де, наприклад, знаходиться Protobuf на рівні 4?
- Думаючи через передачу повідомлень, як відбувається "потік", що gRPC робить те, чого пропускає protobuf?
- Якщо відправник використовує protobuf, чи може сервер використовувати gRPC або gRPC додає щось, що може доставити лише клієнт gRPC?
- Якщо gRPC може зробити синхронний та асинхронний зв’язок можливим, Protobuf призначений лише для маршалінгу, і тому не має нічого спільного із станом - true або false?
- Чи можу я використовувати gRPC у фронтенд-програмі, що спілкується замість REST або GraphQL?
Я вже знаю - або припускаю, що знаю - що:
- Двійковий протокол для обміну даними
- Розроблено Google
- Використовує згенеровану "Структуру", як опис на клієнті та сервері, для повідомлення un - / - marshall
- Використовує protobuf (v3)
- Знову від Google
- Рамка для викликів RPC
- Також використовує HTTP / 2
- Можливе синхронне та асинхронне спілкування
Я знову припускаю, що це просте запитання для тих, хто вже використовує цю технологію. Я все одно вдячний тобі за терпіння зі мною та допомогу. Я також був би дуже вдячний за будь-яке глибоке занурення технологій у мережу.