Масштабируем WebSocket-соединения на Go / Александр Емелин (Авито)

Поділитися
Вставка
  • Опубліковано 27 кві 2020
  • При поддержке AvitoTech мы впервые публикуем все видео с GolangConf 2019 в открытый доступ. Учитесь, вдохновляйтесь и перенимайте лучшие практики у спикеров, не выходя из дома.
    Приглашаем на GolandConf 2020 live!
    14-17 октября 2020, онлайн по всему миру.
    Подробности и билеты bit.ly/3eYckfH
    Календарь конференций - ontico.ru
    --------
    GolangConf 2019
    Тезисы и презентация:
    golangconf.ru/2019/abstracts/...
    В экосистеме Go существует несколько замечательных WebSocket-библиотек - это в первую очередь Gorilla WebSocket, а также github.com/gobwas/ws, nhooyr.io/websocket. Казалось бы - бери и делай свой проект, взяв за основу одно из перечисленных решений.
    ...
    --------
    Нашли ошибку в видео? Пишите нам на support@ontico.ru

КОМЕНТАРІ • 15

  • @ginkt465
    @ginkt465 2 роки тому +2

    Классный доклад! Спасибо!!

  • @TruongHoang-du9if
    @TruongHoang-du9if 3 роки тому +2

    Very nice talk. And thanks for publishing the slide.

  • @alexeysmirnov5481
    @alexeysmirnov5481 4 роки тому +4

    Отличный доклад

  • @Levelord92
    @Levelord92 2 роки тому +1

    Александр, а есть гитхаб репо с живыми примерами?

  • @johnaran
    @johnaran 4 роки тому

    WebSocket кто его еще использует? Это уже устарело, сейчас модно gRPC

    • @alexander.emelin
      @alexander.emelin 3 роки тому +12

      gRPC потребляет гораздо больше ресурсов на сервере, больше CPU (до 3 раз на аналогичной нагрузке), больше RAM. GRPC в браузере заводится через костыли в виде доп. прокси сервера, и без bidirectional streaming. Но в целом я ничего против GRPC не имею, норм транспорт со своими преимуществами.

    • @johnaran
      @johnaran 3 роки тому

      @@alexander.emelin ну ты врунишка, наоборот нету нагрузок. Дурак ты подумай что будет когда дело дойдет до кодирования например в JSON и обратно.

    • @alexander.emelin
      @alexander.emelin 3 роки тому +17

      ​@@johnaran через WebSocket можно отправлять binary данные, в том числе сериализованные в Protobuf - как это происходит в том же GRPC. Честно говоря изначально подумал, что вы плюс-минус разбираетесь в вопросе - а теперь вижу, что не особо, нахватались модных аббревиатур :)

    • @johnaran
      @johnaran 3 роки тому

      @@alexander.emelin Это ты в теории можешь передать, на практике сделай я то уже это все пробовал: И вообще считаешь что Гугл дураки раз придумали и используют gRPC

    • @eugenesazonov2735
      @eugenesazonov2735 3 роки тому +4

      Это вообще разные вещи. gRPC однонаправлеенный протокол поверх http2, вебсокет двунаправленный. Это как пилу с топором сравнивать.