Unary: один запрос → один ответ. Как обычный REST вызов. Самый простой. Server streaming: клиент шлёт один запрос, сервер отвечает потоком сообщений. Пример: подписка на обновления, пагинированная выгрузка. Client streaming: клиент шлёт поток, сервер отвечает одним сообщением. Пример: upload, агрегация данных. Bidirectional: оба шлют потоки одновременно и независимо. Пример: чат, collaborative editing. В proto определяется словом stream перед типом. В Go каждый тип имеет свой интерфейс с Send/Recv.
Unary vs server streaming vs client streaming vs bidirectional?
Middle
246 просмотровAFK Offer AI
Как тестировать time-dependent код?