Григорий Кошелев - Когда всё пошло по Кафке

Sdílet
Vložit
  • čas přidán 4. 08. 2019
  • Ближайшая конференция - Joker 2024, 9 октября (Online), 15-16 октября, Санкт-Петербург
    - -
    . . . . Полезный доклад, в котором не только рассказываются грабли в эксплуатации Apache Kafka, но и объяснены трейд-оффы и архитектурные особенности, которые к этим граблям приводят. Если у вас есть Кафка, то доклад стоит послушать.
    Погрузимся в архитектуру компонентов Кафки. Вместе пройдёмся по граблям, которые заботливо собраны в одну презентацию. Постараемся понять, откуда в Кафке взялись различные ограничения. Всё по-честному, никакого маркетинга.
    Выбранные для доклада грабли помогут ответить на следующие вопросы:
    Что не так с настройками (по умолчанию)?
    К каким неожиданностям должны быть готовы клиенты?
    Зачем Кафке девопс?
    Много настроек - это хорошо или плохо?
    О чём забыли написать в документации?
  • Věda a technologie

Komentáře • 27

  • @illiailliaa8846
    @illiailliaa8846 Před 4 lety +7

    познавательно и по делу!

  • @simplechannel7859
    @simplechannel7859 Před 3 lety

    Лайк докладчику!

  • @alexanderten9540
    @alexanderten9540 Před 7 měsíci

    Можно разобрать async...await как мессадж времени жизни по Кафке? Это то, что Бутстрапу нужно от Кафки

  • @mfe_
    @mfe_ Před 4 lety

    Очень жизненно, к сожалению.

  • @johngraham8220
    @johngraham8220 Před 2 lety +1

    18:02 не понял противопоставления ОРСУБД и брокера сообщений. Это как бы штуки, предназначенные для разных целей.

  • @olegmaslov2057
    @olegmaslov2057 Před 3 lety

    10:50 Какой смысл считать номер партиции для нового сообщения? Ведь банальный "револьверный подход" будет сохранять новые сообщения равномерно по всем партициям по кругу. А на высчитывание хэша и получение остатка от деления уйдёт какое-то процессорное время...

    • @avchitov
      @avchitov Před 3 lety +2

      например, если нужно чтобы данные по одному и тому же клиенту попадали всегда на одну и ту же партицию. Почитайте про шардирование - аналогия 1 к 1.

  • @pvinnie3827
    @pvinnie3827 Před rokem

    а теперь еще помножте все это на разную реализацию в разных либах на разных ЯП. Автору респект, конечно

  • @TaranovskiAlex
    @TaranovskiAlex Před 4 lety

    Спасибо за доклад!

  • @antNecrom
    @antNecrom Před 4 lety +1

    Очень приятный докладчик, очень хороший доклад

  • @derzimstroy
    @derzimstroy Před 4 lety

    А кто может сказать, как определяется момент удаления сообщения в шине, если она не знает ничего про подписчиков ? Или всё-таки знает ?

    • @hrensgoryable
      @hrensgoryable Před 4 lety +1

      В каждом топике настраивается retention - критерий удаления сообщений. Можно настроить по времени (от момента получения сообщения, это включено по умолчанию с временем жизни в одну неделю) или по размеру данных топика на диске. Про подписчиков топик ничего не знает, ему всё равно есть ли они, сколько их, кто из них что прочитал и т.п. - это их дело.

    • @derzimstroy
      @derzimstroy Před 4 lety +2

      @@hrensgoryable
      Спасибо за пояснение, возникает ощущение, что Кафка не годится для систем где сообщения принципиально не должны теряться и дублироваться например, банковских или платежных. А вот для всяких логов/статистики - пойдет.

    • @hrensgoryable
      @hrensgoryable Před 4 lety +1

      @@derzimstroy чтобы не терялись можно добиться относительно просто, а вот к повторному появлению того же сообщения в обработке надо быть готовым.

    • @derzimstroy
      @derzimstroy Před 4 lety +1

      @@hrensgoryable
      На клиентах надо тщательно кодить и сохранять id последних обработанных собщениий, нет воокфлоу обработки и обогащения сообщений, а в чем тогда преимущества ? Типа бесплатный сыр ?

    • @hrensgoryable
      @hrensgoryable Před 4 lety +3

      @@derzimstroy на клиенте надо всегда быть готовым к тому, что прилетит уже обработанное сообщение (либо быть готовым к потерям) - гарантии доставки уровня exactly once это скорее теоретическая возможность такой доставки, чем практическая гарантия. Преимущества - имеется в виду перед чем? Если вам не нужно обрабатывать миллионы/миллиарды сообщений в день, то JMS как по мне удобнее. Если надо - то Кафка выглядит интереснее, т.к. она изначально спроектирована так, чтобы её легко было горизонтально масштабировать, когда возможностей вертикального масштабирования уже не хватает.

  • @vyacheslavbelov4320
    @vyacheslavbelov4320 Před 4 lety +4

    Хороший доклад. Люди заново изобретают велосипед. Смотрю на все это и думаю чем JMS не устраивает? В лучшей его реализации. С 2008 года использую Sonic MQ. Все там было о чем сейчас хайп поднимают.

    • @12zxqwas1
      @12zxqwas1 Před 4 lety

      На 4 минуте ответ уже.

    • @vyacheslavbelov4320
      @vyacheslavbelov4320 Před 4 lety +2

      И это все? Но увы, тоже есть в JMS.

    • @manOfPlanetEarth
      @manOfPlanetEarth Před 3 lety +1

      @@12zxqwas1
      Есть чем дальше парировать Вячеслава Белова?🤔

    • @manOfPlanetEarth
      @manOfPlanetEarth Před 3 lety

      @@12zxqwas1
      ????

    • @ildarvalitov2568
      @ildarvalitov2568 Před 6 měsíci

      Кафка это распределённый высоконадежный и высокопроизводительный лог. Этот проект был спроектирован как лог. Его можно использовать как massage broker, но это вариант использования 😊