# ПРОЦЕССЫ Ресурсы Цикл разработки ПО Waterfall RUP Agile Kanban Управление Теория ограничений АРХИТЕКТУРА Ресурсы ПО для Архитектора Кто архитекторы? Архитектурные слои язык Archimate GAP-анализ SOA Типы интеграции Проектное решение ESB Микросервисы и service mesh HTTP/REST RPC DDD АНАЛИЗ Ресурсы ПО для Аналитика Кто аналитики? Бизнес-процесс Требования Уровни и типы Источники Стейкхолдеры Нотации Vision (Концепция) Сервисы DevOps CI/CD/CDP VM и Docker Контракты API Оценка задачи git Frontend Apache Регулярка Linux ТЕСТИРОВАНИЕ Ресурсы QA и QC Цикл тестирования Уровни тестирования Виды тестирования Баг-репорт Шаблоны Тестирование требований Тест-анализ и тест дизайн Тест план Метрики качества Автотесты Selenium XPATH Генератор данных Безопасность Нагрузочное ДАННЫЕ Ресурсы MDM Big data Об информации SQL intro MongoDB intro БИБЛИОТЕКА Курсы Системная инженерия "Сумма технологии" "Антихрупкость" Экстраполяция в будущее Политэкономия Красивые диаграммы Сознание, интеллект

/ АНАЛИЗ АРХИТЕКТУРА: - АРХИТЕКТУРА - Solution Design - ESB - Микросервисы и service mesh - HTTP/REST - RPC | Почерпнуть мудрость | Суть RPC | Кратко о XML-RPC - DDD ДАННЫЕ DevOps GAMING БИБЛИОТЕКА ПРОЦЕССЫ ТЕСТИРОВАНИЕ
RPC
last update: 19-02-2021, 21:42 UTC
Почерпнуть мудрость
Суть RPC

скачать схему в формате diagrams.net (бывший draw.io)

Удалённый вызов процедур (Remote Procedure Call, RPC) = класс технологий, позволяющих ПО вызывать функции или процедуры в другом адресном пространстве (на удалённых компьютерах, либо в сторонней системе на этом же устройстве).
Обычно реализация RPC включает в себя два компонента: сетевой протокол для обмена в режиме клиент-сервер и язык сериализации объектов (или структур, для необъектных RPC).
Различные реализации RPC имеют очень отличающуюся друг от друга архитектуру и разнятся в своих возможностях: одни реализуют архитектуру SOA, другие — CORBA или DCOM. На транспортном уровне RPC используют в основном протоколы TCP и UDP, однако, некоторые построены на основе HTTP (что нарушает архитектуру ISO/OSI, так как HTTP — изначально не транспортный протокол).

Часто можно встретить следующие реализации:

  • gRPC -- RPC-фреймворк от Google, использующий protobuf и HTTP/2. Применяется в service mesh
  • JSON-RPC, JavaScript Object Notation Remote Procedure Calls -- текстовый протокол на базе HTTP
  • XML RPC -- текстовый протокол на базе HTTP
  • SOAP, Simple Object Access Protocol -- текстовый протокол на базе HTTP, как расширение XML RPC

Кратко о XML-RPC
Подробнее:

XML-RPC = протокол удалённого вызова процедур, использующий XML как формат данных и HTTP как транспортный протокол.

скачать схему в формате diagrams.net (бывший draw.io)

Преимущества XML-RPC:

  1. простой механизм вызова удалённых процедур на машинах с различным ОС
  2. независимость от ЯП и платформ. Библиотеки XML-RPC доступны для Java, C# и многих других языков
  3. имеет очень краткую спецификацию