# Исходный код вики gRPC

Редактировал(а) Alexandr Fokin 2024/12/29 19:28

Последние авторы

author | version | line-number | content
--- | --- | --- | ---
|  | 1 | | |**Remote Procedure Calls**
|  | 2 | | |Работает на основе протокола [[HTTP/2>>doc:Сети.Протоколы.HTTP2.WebHome]].
|  | 3 | | |Может выступать как альтернатива обычному WebApi на основе [[HTTP 1.1>>path:/bin/view/%D0%A1%D0%B5%D1%82%D0%B8/%D0%9F%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB%D1%8B/HTTP%201.1/]], также реализует модель запрос-ответ.
|  | 4 | При этом он также поддерживает интерфейс взаимодействия на основе стримов, в том числе и дюплексно.
|  | 5 | Чаще используется для внутреннего взаимодействия сервисов, не так распространен как внешний интерфейс.
|  | 6 | Использует подход [[Contract First>>Архитектура и модели.Про приложение.Некоторые подходы к разработке.Contract First.WebHome]] собственной спецификации [[Protobuf>>doc:Разработка.Схемы данных, контракты, форматы.Binary.Protobuf.WebHome]].
|  | 7 |
|  | 8 | ----
|  | 9 |
|  | 10 | Способы взаимодействия:
|  | 11 |
|  | 12 | * Unary RPC
|  | 13 | * Server streaming RPCs
|  | 14 | * Client streaming RPCs
|  | 15 | * Bidirectional streaming RPCs
|  | 16 |
|  | 17 | ----
|  | 18 |
|  | 19 | gRPC
|  | 20 | [[https:~~/~~/ru.wikipedia.org/wiki/GRPC>>https://ru.wikipedia.org/wiki/GRPC]]
|  | 21 |
|  | 22 | gRPC в качестве протокола межсервисного взаимодействия. Доклад Яндекса
|  | 23 | [[https:~~/~~/habr.com/ru/company/yandex/blog/484068/>>https://habr.com/ru/company/yandex/blog/484068/]]
|  | 24 |
|  | 25 | ----
|  | 26 |
|  | 27 | ==== Внутренние ссылки: ====
|  | 28 |
|  | 29 | ====== Дочерние страницы: ======
|  | 30 |
|  | 31 | {{children/}}
|  | 32 |
|  | 33 | ====== Обратные ссылки: ======
|  | 34 |
|  | 35 | {{velocity}}
|  | 36 | #set ($links = $doc.getBacklinks())
|  | 37 | #if ($links.size() > 0)
|  | 38 | #foreach ($docname in $links)
|  | 39 | #set ($rdoc = $xwiki.getDocument($docname).getTranslatedDocument())
|  | 40 | * [[$escapetool.xml($rdoc.fullName)]]
|  | 41 | #end
|  | 42 | #else
|  | 43 | No back links for this page!
|  | 44 | #end
|  | 45 | {{/velocity}}
|  | 46 |
|  | 47 | ----

## Приложения