Сравнение REST, RPC, GraphQL и SOAP. Что лучше для интеграции?

  Рет қаралды 10,101

Listen IT

Listen IT

Күн бұрын

Запишись на курс "Python - программист
с нуля" 👉 wiki.merionet.ru/merion-acade...
Подпишись на канал Merion Academy 👉 @merionacademy ( / @merionacademy )
00:00 Тема статьи, источник
00:45 Интересные курсы по IT
01:46 О чём пойдёт речь, и зачем нужна интеграция
03:16 Что такое RPC
04:10 Как работает RPC
04:36 Преимущества RPC
05:32 Недостатки RPC
06:44 Когда используется RPC
08:46 Что такое SOAP
09:14 Как работает SOAP
10:20 Преимущества SOAP
11:13 Недостатки SOAP
11:57 Когда используется SOAP
12:33 Что такое REST
13:12 Принципы RESTful
14:14 HATEOAS
14:46 Модель зрелости API
15:37 Разница между REST и RPC
16:26 Преимущества REST
17:55 Недостатки REST
18:50 Когда используется REST
19:37 Что такое GraphQL
20:27 Как работает GraphQL
21:26 Преимущества GraphQL
22:43 Недостатки GraphQL
23:22 Когда используется GraphQL
24:01 Что лучше выбрать для интеграции
Поддержать канал разово - yoomoney.ru/to/410012243709514
Поддержать канал подпиской - boosty.to/listenit
Телеграм-канал - t.me/listenit_channel
Я.Дзен - zen.yandex.ru/listenit
По вопросам сотрудничества - t.me/ed_akimov
Спецификация JSON-RPC - www.jsonrpc.org/
Фреймворк gRPC - grpc.io/
Apache Thrift - thrift.apache.org/
Twirp (от Twitch) - twitchtv.github.io/twirp/docs...
Докторская диссертация Роя Филдинга, где он придумал REST - ics.uci.edu/~fielding/pubs/di...
Ссылка на статью (RU) - / %d1%81%d1%80%d0%b0%d0%...
Ссылка на статью (EN) - levelup.gitconnected.com/comp...
Что такое RPC и gRPC за 10 минут - • Что такое RPC и gRPC з...
Различия REST и SOAP за 4 минуты - • Различия REST и SOAP з...
Введение в REST API за 7 минут - • Введение в REST API за...
Что такое GraphQL за 15 минут с примерами - • Что такое GraphQL за 1...
Разница STATEFUL и STATELESS за 14 минут - • Разница STATEFUL и STA...
Что такое HATEOAS за 4 минуты - • Что такое HATEOAS за 4...
Что такое HTTP и HTTPS за 9 минут - • Что такое HTTP и HTTPS...
Что такое JWT и как его создать - • Что такое JWT и как ег...
Что такое CRUD за 6 минут - • Что такое CRUD за 6 минут
Что такое middleware за 7 минут - • Что такое middleware з...
Что такое UML за 7 минут - • Что такое UML за 7 мин...
Что такое SQL и реляционные базы данных - • Что такое SQL и реляци...
Что такое SQL ИНДЕКСЫ за 10 минут - • Что такое SQL ИНДЕКСЫ ...
Что такое NoSQL за 6 минут - • Что такое NoSQL за 6 м...
Что такое ACID за 9 минут - • Что такое ACID за 9 минут
Компиляция и интерпретация за 10 минут - • Компиляция и интерпрет...
Что такое TypeScript за 9 минут - • Что такое TypeScript з...
Что такое UML за 7 минут - • Что такое UML за 7 мин...
Что такое Scrum за 8 минут - • Что такое Scrum за 8 м...
Обзор Agile - • Обзор Agile. Это метод...
Приоритизация бэклога за 4 минуты - • Приоритизация бэклога ...
Что такое Kanban - • Что такое Канбан-метод...
Что такое Канбан-доска - • Канбан-доска - это не ...
Машинное обучение для чайников - • Машинное обучение для ...
Что такое Big Data за 6 минут - • Что такое Big Data за ...
*Компания Meta Platforms Inc. признана в России экстремистской организацией и запрещена.
**Принадлежащие ей соцсети Фейсбук и Инстаграм в России запрещены.

Пікірлер: 20
@whiterabbit5820
@whiterabbit5820 27 күн бұрын
Спасибо за видео! На новом проекте как раз придется поработать с RPC, ранее имел дело только с REST и SOAP. Появилось представление о том, с чем придется иметь дело)
@ListenIT_channel
@ListenIT_channel 27 күн бұрын
Круто, удачи! Потом напиши, как тебе RPC, зашло или нет)
@it-kachalka
@it-kachalka 20 күн бұрын
Прекрасное видео, спасибо) В дополнение к статей про GraphQL: - Еще один огромный неназванный плюс GraphQL это то, что в спецификации есть формат real-time коммуникации (subscriptions), такое еще есть у RPC через streaming, но в GQL реализовано намного удобнее - Также GQL объединяет под собой RPC (mutaions) и запросы по структуре (type), что позволяет в случае чего переключаться между "существительным" и "глаголом" - И пункт "Проблемы производительности" не учитывает, что это очень легко исправить просто создав Query, которая будет в себе содержать специфический нужный ответ, что пришлось бы так и так делать в других видах API А вот из реальных минусов, это то, что до сих пор инструментарий и библиотеки для backend сделаны очень плохо и вне Node.js приходится сталкиваться с трудностями.
@ListenIT_channel
@ListenIT_channel 18 күн бұрын
Спасибо за фидбэк! Подробно про это говорили, кстати, в отдельной статье про GraphQL - kzbin.info/www/bejne/jpzbZqqopLSnbdE
@stas7che
@stas7che 15 күн бұрын
А websocket это из другой оперы?
@TheGeletka
@TheGeletka 27 күн бұрын
Про RPC неверно все-таки, почитайте например RFC-1831, или более ранние. Ни HTTP, ни POST, ни GET там не при чем. Вы рассказываете про модифицированную версию (каких очень много). RPC чаще всего работает на голом UDP, TCP.
@ListenIT_channel
@ListenIT_channel 26 күн бұрын
Согласен, что было бы лучше проговорить в статье ещё про работу на голом TCP и UDP, но не соглашусь, что "чаще всего". Сейчас довольно часто используется работа и через HTTP, и через HTTP/2.
@llRub3Nll
@llRub3Nll 24 күн бұрын
Ну насколько я видел сейчас старый RPC никто не интегрирует, сейчас все работают с gRPC которая модификация на базе HTTP 2.0 так что полностью согласен с автором видео
@TheGeletka
@TheGeletka 24 күн бұрын
@@llRub3Nll в Web не интегрируют, но там, где задействована аппаратура сетевая, почти все на RPC и надстройки над ним, так как там контроллеры. Я к тому, что назвать это стоило по другому в видео - "Семейство протоколов RPC" или как-то еще получше
@vadimp4012
@vadimp4012 24 күн бұрын
Не уверен, что CORBA - это API. Скорее, архитектура межсистемного объектного взаимодействия. Также не очень ясно про REST. Насколько знаю, он оперирует только абстрактными понятиями CRUD (Create, Read, Update, Delete) и совершенно ничего не знает о транспорте - он может быть каким угодно. REST не обязан подчиняться HTTP-методам (вроде GET/POST и т.д.), более того абстрактную операцию REST Delete можно выполнить с помощью HTTP GET и при этом сервис всё равно может быть RESTful. Мне всегда казалось, что именно на этом и основан REST. А так - да, о нём много разговоров и заблуждений.
@erlanibraev
@erlanibraev 22 күн бұрын
Прошу прощения. Вы путаете rest и soap. Основа rest, в том что для каждой сущности есть уникальный url. Так что rest имеет смысл только в рамках http-протокола. 😂
@vadimp4012
@vadimp4012 22 күн бұрын
@@erlanibraev я не знаю, в рамках чего он имеет смысл. Я говорил о его верхнеуровневых принципах, а не HTTP-протоколе. URL может существовать и в рамках FTP и чего угодно. HTTP - это уже существуюшая реализация транспорта для REST. Где вы здесь SOAP увидели, неясно.
@ListenIT_channel
@ListenIT_channel 18 күн бұрын
Да, так и есть, REST действительно не привязан обязательно к HTTP, но ещё не встречал его в другой реализации, и всё-таки когда говорят на работе и спрашивают на собеседования про REST, то имеют в виду именно реализацию через HTTP. Не очень понимаю, как удаление ресурса через GET сопоставляется с RESTful. То что это можно сделать технически, не означает, что это будет RESTful. Согласен, что важно знать, что не обязательно привязываться к HTTP в REST, но всё же в таком сжатом видео в сравнениями не вижу большого смысла рассматривать такие "вакуумные" теоритические варианты использования.
@erlanibraev
@erlanibraev 18 күн бұрын
@vadimp4012 У ftp нет глаголов get, post, put, putch. Которые являются неотъемлемой частью rest протокола для манипулирования сущностями. 😏
@vadimp4012
@vadimp4012 17 күн бұрын
@@ListenIT_channel потому что ни одна из операций CRUD никак не сопоставляется с методами HTTP - т.е. реализовывать CRUD можно с помощью каких угодно методов. Поэтому я упомянул в качестве примера Delete с помощью GET. Но это в моём понимании.
Что такое TCP/IP: Объясняем на пальцах
15:38
OMG🤪 #tiktok #shorts #potapova_blog
00:50
Potapova_blog
Рет қаралды 10 МЛН
1❤️#thankyou #shorts
00:21
あみか部
Рет қаралды 88 МЛН
🍟Best French Fries Homemade #cooking #shorts
00:42
BANKII
Рет қаралды 65 МЛН
Разница STATEFUL и STATELESS за 14 минут
14:24
Что такое gRPC и Protobuf?
8:37
Merion Academy
Рет қаралды 40 М.
Что такое EVENT STORMING за 15 минут
15:23
Listen IT
Рет қаралды 4,2 М.
OMG🤪 #tiktok #shorts #potapova_blog
00:50
Potapova_blog
Рет қаралды 10 МЛН