Что такое gRPC и Protobuf?

Поділитися
Вставка
  • Опубліковано 28 лис 2024

КОМЕНТАРІ •

  • @ВикторКавацюк
    @ВикторКавацюк 8 місяців тому +50

    Предполагаю следующие причины, по которым можно использовать REST вместо gRPC:
    1) Проста для клиента. С REST не потребуется на стороне клиента реализовывать и поддерживать gRPC Stub
    2) Безопасность. На клиенте, особенно если это публичная система, сложнее обеспечить безопасность относительно доступа к gRPC Stub.

    • @xakep2776
      @xakep2776 14 днів тому

      Как на счет безопасности наоборот

  • @italky84
    @italky84 8 місяців тому +44

    grpc больше подходит для внутренних api, а rest для того чтоб предоставлять api своего сервиса сторонним разработчикам.

    • @Disorrder
      @Disorrder 3 місяці тому

      Хороший ответ, мне нравится)

  • @devospos
    @devospos 9 місяців тому +42

    Спасибо, еще интересно было бы глянуть видео про UNIX сокеты,и вообще сокеты в вашей интерпретации.

    • @VitaliySunny
      @VitaliySunny 8 місяців тому +3

      unix сокеты?

    • @devospos
      @devospos 8 місяців тому

      @@VitaliySunny да, ошибся

    • @Nicktimes
      @Nicktimes 8 місяців тому

      Бля чел хуйней не занимайся,таких видео 1000 на утуб,там все логично сокеты конекты,порты.или ты просто фанатической хуйней занимаешься

  • @artemrokhmakov6373
    @artemrokhmakov6373 8 місяців тому +5

    Хочу разграничить понимание между REST и gRPC. REST подходит для общения между клиентом и сервером. А gRPC, это больше про общения каких то внутренних действий между сервисами/микро сервисами, который не должны отдавать явного ответа, а просто обозначение того что операция по запросу была успешна выполнена и можно продолжать программу (например: отправка email-письма,запись в бд, либо же ручка для других сервисов).
    Но очень важная фича, что можно выстраивать архитектуру между разными сервисами который написаны на разных языках.

  • @hunterxvov4ik
    @hunterxvov4ik 8 місяців тому +14

    вот без шуток, я посмотрел штук 10 видео по гРПС, потому что у меня на проекте он используется, но я не шарил что это. Нужно было сразу включить это видео и все. Все вот так вот просто встало на свои места. Спасибо

  • @hunterxvov4ik
    @hunterxvov4ik 5 місяців тому +3

    2:50 - "конечно, теперь надо ... проводить сериализацию" - не совсем корректно, потому что json тоже проводит сериализацию перед отправкой (это и есть формат сериализированных данных), хотя и отображается в human-readable виде

  • @sasichkamega
    @sasichkamega 8 місяців тому +11

    В proto3 удалены required и optional. Все по умолчанию optional.
    Выбрал grpc в своем микросервисном приложении только из-за того, что proto файл это по сути и есть документация api. На остальные плюсы в целом пофиг было😅, я готов был мириться с оверхедом реста, но протофайлы это, имхо, киллер фича.

    • @avpmk
      @avpmk 8 місяців тому +1

      Есть расширение, которое позволяет помечать в третьем протобафе помечать поля как обязательные, не факт что все генерилки умеют с ним работать, но scalapb умеет.

    • @avpmk
      @avpmk 8 місяців тому +5

      OpenAPI (бывший swagger) - отличная документация. Точно так же по ней генерят и контроллеры (и модели) для бекенда и клиентов для разных языков. И наоборот по коду на бекенде генерят доку. Единственный минус - нельзя описать websocket (раньше по крайней мере так было). Но при помощи AsyncAPI можно (им не пользоваться).

    • @frez_x
      @frez_x 7 місяців тому +3

      @@avpmk вебсокети тепер теж можна

  • @ZRKDark
    @ZRKDark 8 місяців тому +12

    Посмотрел все ваши видосы, после того как вы попались в предложке. Очень доволен подачей материала! Но после описания модели OSI не увидел описание модели TCP/IP, которая, на мой взгляд, более ёмкая. Прошу сделать следующий ролик о ней)

  • @MrCter
    @MrCter 8 місяців тому +10

    как все свежо и молодежно 😊
    как будто и не было корбы и ms rps больше 30 лет назад...

    • @uuuummm9
      @uuuummm9 5 місяців тому

      Скоро снова придумают distributed transactions, вот тогда заживём...

    • @ДжонДоу-у8у
      @ДжонДоу-у8у 3 місяці тому

      Всё новое это хорошо забытое старое

  • @sergey.k
    @sergey.k 8 місяців тому +15

    иногда вот кажется что всё подобное придумывается только для души, выглядит супер чётко, но потом чтобы поддерживать это нужно прям страдать...

    • @kae6108
      @kae6108 6 місяців тому +1

      Главное что за это платят деньги)

  • @azizsaparniyazov4601
    @azizsaparniyazov4601 2 місяці тому +1

    Начал смотреть, чтобы импрувнуться. Увидел мем с собакой "Вам наверное интересно зачем я вас всех собрал". Смеялся настолько долго, что забыл всё, что изучал в течении дня. Придется опять всё пересматривать :(

  • @Qiqpop
    @Qiqpop 9 місяців тому +8

    отличный видос, продолжайте в том же духе

  • @daniyarzhanakhmetov7741
    @daniyarzhanakhmetov7741 8 місяців тому +1

    А есть видео о том, как хранятся данные(object(array, {}, function)) в памяти и как происходит push, unshift, etc. c этими данными?

  • @vorchuun
    @vorchuun 2 місяці тому +1

    Не понял момента в чем преимущество общения grpc в микросковисах , когда для этого используют брокеры с http

  • @АлексейПатрушев-ю9ь

    можно пояснительную бригаду, причем тут икс зибит?)

  • @20GK20
    @20GK20 8 місяців тому +6

    Отличный видеоролик
    Интересно будет если расскажете про Kafka или Redis

    • @merionacademy
      @merionacademy  8 місяців тому +5

      Обязательно будет! Кстати, про redis мы уже немного рассказывали в нашем видео про NoSQL

  • @dan_feed8264
    @dan_feed8264 8 місяців тому +1

    я правильно понял, что можно переставать учить rest и начинать учить grpc?

  • @vino_kurov_it
    @vino_kurov_it 8 місяців тому +1

    Хотите сказать что для взаимодействия с Docker-Compose их контейнерами? Юзать TCP не логично?

  • @RatchetTV1515
    @RatchetTV1515 8 місяців тому +2

    Наверное, пока что лучше юзать rest для общения фронтенда и бекенда. Можно через api gateway преобразовывать запросы в grpc

    • @semenloktionov3512
      @semenloktionov3512 8 місяців тому +4

      почему, для тех же мобилок grpc как по мне лучше будет ибо меньше данных гоняется туда-сюда. плюс можно будет сгенерировать готовый сервис клиент под необходимый язык. это оч удобно

    • @MRoose
      @MRoose 8 місяців тому +4

      Тоже так думал пока не прочел Site Reliability Engineering от инженеров Google.
      У них фронт с бэком по rpc общается. Поэтому так шустрр и стабильно возможно

    • @RatchetTV1515
      @RatchetTV1515 8 місяців тому +1

      @@semenloktionov3512 разве что придётся фронтов переучить. Хотя тем, кто пользовался автогенерацией клиента по openapi будет проще, думаю. Значит, за grpc будущее. А вот что с graphql тогда - не понятно

    • @uuuummm9
      @uuuummm9 5 місяців тому

      ​@@RatchetTV1515 graphql по-моему концепт другого уровня. Он вполне может работать и поверх grpc.

    • @RatchetTV1515
      @RatchetTV1515 5 місяців тому

      @@uuuummm9 ну, кстати, думаю, что хороший вариант в виде интерфейса BFF делать через graphql

  • @ВиталийСорока-т8н
    @ВиталийСорока-т8н 2 місяці тому

    Рест удобно года пэйлоад не очень большой или когда всегда большая часть полей присутсвует в каждом запросе

  • @Exy63
    @Exy63 8 місяців тому +1

    Супер урок! Спасибо 🎉

  • @АлексейАнашкин-щ5ж
    @АлексейАнашкин-щ5ж 3 місяці тому +1

    Для внешних интеграций конечно лучше REST

  • @РоманПоследовский-п3д
    @РоманПоследовский-п3д 6 місяців тому +15

    Есть только одна причина использовать gRPC - это если вы гугл и увеличивая пропускную способность, прилучается солидная экономия на ресурсах оборудования. Во всех иных случаях - вы получаете сложность поддержки и отладки

    • @xakep2776
      @xakep2776 14 днів тому

      Херь написал

  • @stari4ok702
    @stari4ok702 8 місяців тому +1

    Предположу, что REST нужен там, где не нужна потоковая передача данных и мультиплексирование, но конкретный пример в голову не приходит. Кидайте свои мысли камрады :)

    • @uuuummm9
      @uuuummm9 5 місяців тому

      Я уже давно все вебные протоколы использую как функции, начиная с веб-сервисов.

  • @Edgar-pu1lc
    @Edgar-pu1lc 8 місяців тому +1

    Но передача json тоже по сути бинарный, не ?

    • @VitaliySunny
      @VitaliySunny 8 місяців тому +6

      Верно, но передается текстовая информация (структура json - ключи, значения, всякие управляющие скоробочки и конструкции), когда как в gRPC только значения (структуру мы определяем на этапе создания protobuf). Т.е. gRPC в этом случае гораздо меньше по объему, соответственно быстрее.

  • @BurmAlex
    @BurmAlex 11 днів тому

    Так это все же технология, фреймверк или система? А то за одну минуту чем только не назвали

  • @__ali__97
    @__ali__97 9 місяців тому +3

    офигенные видосы, все пересмотрел по несколько раз) предлагаю следующее видео запилить про graphql

  • @ИванОкоянный-с9к
    @ИванОкоянный-с9к 8 місяців тому

    Контент краткий и интересный! Можно узнать название саундтрека к вашим роликам?

  • @ИльяГордеев-т3х
    @ИльяГордеев-т3х 8 місяців тому

    Спасибо за видео! Бвло интересно 😊

  • @uudecode
    @uudecode 8 місяців тому

    Чот подумал, а что в grpc с bigendian\littleendian ?

  • @ЮлиСантори
    @ЮлиСантори 8 місяців тому

    Меня тут на собес спросили: а можно ли через http реализовать асинхронную интеграцию? И что - то я подвисла) Помогите, знатоки!

  • @ВасилийЮдин-п8ы
    @ВасилийЮдин-п8ы 8 місяців тому +2

    Дай бог здоровья

  • @spacexnix
    @spacexnix 8 місяців тому

    Хорошее видео. Понятное ❤

  • @arbaktiyarov
    @arbaktiyarov 24 дні тому

    Лучший

  • @Hadagan_man
    @Hadagan_man 8 місяців тому

    Мне интересно что за микрофон у Диктора ))

  • @zakirovio
    @zakirovio 8 місяців тому

    2:03 не PATCH?

  • @milton4691
    @milton4691 8 місяців тому +2

    Жду видос по эластику

    • @panda58dev
      @panda58dev 8 місяців тому

      Жду видос по мантикоре

  • @sysfab
    @sysfab 9 місяців тому +1

    о новый видосик

  • @Daleever
    @Daleever 8 місяців тому +1

    отличный ролик

  • @Madgav777
    @Madgav777 7 місяців тому

    И правда, наконец, стало понятно! Как будто ангельской золотой дождь на темечко пролился. Хотелось еще немного по минусам grpc послушать

  • @Aleksandr37rus
    @Aleksandr37rus 8 місяців тому +1

    Rest лучше в названии) простота а еще независимость.

  • @flaviusaecius7021
    @flaviusaecius7021 9 місяців тому

    Все круто. Но я ничего не понял

  • @НиколайВикторович-х3г
    @НиколайВикторович-х3г 8 місяців тому +1

    А ответ на вопрос можно ?)

  • @ВладРоманов-ю8л
    @ВладРоманов-ю8л 8 місяців тому

    Сделайте видео про Unix сокеты пожалуйста

  • @DoggerProgger
    @DoggerProgger 8 місяців тому +1

    8:37 очень много кодаааааа не супер нужного, но если очень много денег и времени, вполне можно попробовать

  • @qlobik
    @qlobik 8 місяців тому

    Сделайте пожалуйста Видео про ISCSI

  • @svinoswag
    @svinoswag 8 місяців тому

    Сделайте видео про сокеты на трансплртном уровне пожалуйста

  • @GladSpiR
    @GladSpiR 8 місяців тому

    Когда нужен синхрон , наверно тогда REST

    • @nevdupIenysh
      @nevdupIenysh 8 місяців тому

      Rest и на асинхронном пишут

  • @user_Broke_David
    @user_Broke_David 8 місяців тому +1

    Рест умер , вкатываемся на grpc?

    • @asedael5519
      @asedael5519 8 місяців тому +1

      Не-а, для микросервисов больше эта технология.

  • @Qiqpop
    @Qiqpop 9 місяців тому +1

    пришел по зову из телеги

  • @IngersollMaria-z9s
    @IngersollMaria-z9s Місяць тому

    Moore Maria Lopez Brian Thompson Frank

    • @merionacademy
      @merionacademy  Місяць тому

      Esteban González, Fernando Sánchez, Enrike Espenoza, Mario Garcia

  • @v.lavrinovics1970
    @v.lavrinovics1970 7 місяців тому

    Автор видео, вы куда то очень торопились?

    • @merionacademy
      @merionacademy  7 місяців тому

      На троллейбус только, а что?

  • @Serofim2013
    @Serofim2013 8 місяців тому

  • @IQ-120
    @IQ-120 Місяць тому

    Дожили... Хайп подняли... Ню, стандарт это хорошо... 10 лет назад делал самописную херню такую... А сейчас пришли крутые парни... Это как C# сборки иметь вместо js скриптов в браузере... Очередная блестяшка для сорок...

  • @ВадимХвас
    @ВадимХвас 9 місяців тому +1

    а 👉а 👉

  • @Naumkovich
    @Naumkovich 8 місяців тому

    Жесть, пчел юзает мёртвые мемы и то криво (
    Помянем

  • @Михазагрздин
    @Михазагрздин 8 місяців тому

    ⁴⁴⁸

  • @ДаниилШестаков-щ8к
    @ДаниилШестаков-щ8к 8 місяців тому

    😂😂😂бляяя
    Ахаха
    Эта бабка со свечами разорвала меня нахуй)

  • @RustamMajidov
    @RustamMajidov 8 місяців тому

    Что за ересь? Где лягушонок с компуктером?

  • @100BAXOV
    @100BAXOV 7 місяців тому

    САМЫЙ ОТВРАТИТЕЛЬНЫЙ САЙТ У ВАС