Apache Camel. Малоизвестный комбайн

Поделиться
HTML-код
  • Опубликовано: 7 ноя 2024
  • Apache Camel. Фрейморк - комбайн. Шина данных уровня экосистемы. Фреймворк, помогающий организовать потоки данных без боли
    Поддержать проект:
    ➡ Стать спонсором www.youtube.co...
    ➡ Patreon / letscodedru
    ➡ Яндекс.Деньги money.yandex.r...
    ➡ PayPal paypal.me/lets...
    ➡ Qiwi qiwi.me/letscode
    Apache Camel - инструмент, который поможет вам отстраниться от шаблонного кода при организации потоков данных между разными источниками и получателями. Вам останется только описать простые правила и заняться реализацией логики, не заморачиваясь на танцы с бубнов вокруг подключения-чтения-передачи данных. Плюсом ко всему выступает богая и долгая история создания фреймворка и опробованность в тысячах крупных проектов по всему миру.
    Код из видео:
    github.com/dru...
    Домашняя страница фреймворка:
    camel.apache.org/
    Онлайн версия книги Camel in Action:
    livebook.manni...
    Список всех компонентов:
    camel.apache.o...
    Компонент таймера:
    camel.apache.o...
    Компонент файл:
    camel.apache.o...
    Компонент-jdbc:
    camel.apache.o...
    Руководство по продюсерам:
    camel.apache.o...
    GitHub с примерами кода:
    github.com/apa...
    Базовый пример приложения:
    github.com/apa...
    Пример приложения camel-jdbc:
    github.com/apa...
    Конфигурирование logback:
    logback.qos.ch/...
    Видео про горячие клавиши в IDEA:
    • Горячие клавиши Idea/P...
    Видео про основы протокола HTTP:
    • HTTP протокол на пальцах
    Плейлист про реактивный веб на примере Spring WebFlux:
    • Spring Boot WebFlux
    ➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖
    ➡ Второй канал: / geekchatdru
    ➡ Twitch: / drucoder
    ➡ Твиттер: / letscodedru
    ➡ Группа Вконтакте: letscod...
    ➡ Канал в Telegram: t.me/letsCode_dru
    ➡ Чат в Telegram: t.me/joinchat/...
    ➡ Сервер в Discord: / discord
    ➡ Яндекс.Дзен: zen.yandex.ru/...

Комментарии • 90

  • @eugenea7469
    @eugenea7469 3 года назад +1

    Как же надо любить своих подписчиков, чтобы лайкать комменты)

  • @antonk5272
    @antonk5272 4 года назад +4

    Кайф что нет размусоливания и сокращены всякие "ээ", "мм" и прочее. Все четко и быстро, даже ускорение времени не пришлось ставить.

  • @ПаблоКамбарро
    @ПаблоКамбарро 4 года назад +14

    Как раз перешел на проект, где используется Apache Camel, уже взгрустнулось от мысли, что придется в мануалы да англоязычные книги закапываться... Спасибо! Просим продолжения, само собой :-)

    • @СергейШилин-ф8щ
      @СергейШилин-ф8щ 5 месяцев назад

      Если вдруг что то интересное осталось, поделись , пожалуйста)

  • @alexxis246
    @alexxis246 4 года назад +25

    А будет Кафка? Или Elasticsearch?

    • @ПаблоКамбарро
      @ПаблоКамбарро 4 года назад +5

      Присоединяюсь к вопросу этого джентльмена, хотелось бы материал про Кафку/Рэббит

  • @antondoronin1261
    @antondoronin1261 4 года назад +7

    Андрей как всегда на высоте!)

  • @retodenis5181
    @retodenis5181 4 года назад +1

    Какая то магия, совсем недавно узнал про apache-camel и тут видос, спасибо!

  • @ХромовВладислав
    @ХромовВладислав 4 года назад +4

    Отличный обзор этого энтерпрайзного монстрика.

  • @SiarheiBusel
    @SiarheiBusel 3 года назад +1

    Большое спасибо за материал.

  • @АлександрТабатадзе
    @АлександрТабатадзе 4 года назад +1

    Как раз проект миграции проходит на Apache Camel. Спасибо, надо еще! Например, бины, трансформация.

  • @cannibalirk3055
    @cannibalirk3055 3 года назад

    Офигительно!! Спасибо большое за краткий обзор! На новой работе столкнулся с этим фреймворком. В этом видео есть всё, что необходимо понимать для старта!

  • @КсенияВоробьёва-в1ц

    Спасибо! Полезно. Отличная подача информации

  • @tolyaaniskevich763
    @tolyaaniskevich763 4 года назад +2

    Привет Андрей ! очень хочется от тебя получить примеры по брокерам сообщений и про распределенную нагрузку(spring cloud)

  • @SiberianGull
    @SiberianGull 4 года назад +2

    Спасибо! Было полезно - используем в работе! Жду еще видео на эту тему!

  • @lightkingbeknazarov7919
    @lightkingbeknazarov7919 4 года назад +8

    Автор на высоте, респект. Вопрос: Есть ли сборник курсов про микросервисы, spring cloud,?

  • @dmitriy5248
    @dmitriy5248 4 года назад +1

    Шикарное видео! Огромное спасибо

  • @andreydmitriyev4582
    @andreydmitriyev4582 4 года назад

    Спасибо за вводную! Даешь Apache Spark!

  • @vdubovsky
    @vdubovsky 3 года назад

    Спасибо большое за видео.

  • @ВасяВаслин
    @ВасяВаслин 2 года назад

    Андрей, спасибо огромное! Как всегда ёмко, быстро и полезно! Обычно ускоряю видео до 1.5, а тут оно уже ускорено )

  • @SergeyBaranov_ru
    @SergeyBaranov_ru 4 года назад +1

    Отлично, спасибо!
    Было бы интересно про Netty подобное видео посмотреть)

  • @ВладиславПрокопенко-я5н

    Спасибо, очень полезно. Зашел на проект где используется этот фреймворк и искал инфу про него.

  • @shtitshtit8258
    @shtitshtit8258 4 года назад +2

    Отличная тема и хорошо раскрыта, спасибо)

  • @сеньорПерец
    @сеньорПерец 4 года назад +1

    Я как раз искал способ чекать логи серверной приложухи через браузер, теперь знаю что и как буду юзать.

  • @mika2557
    @mika2557 4 года назад +2

    Хорошая тема, лайк за Camel :)

  • @maestro256
    @maestro256 3 года назад +1

    Спасибо! Ещё не смотрел, но уверен что крутое видео и обязательно посмотрю.
    Очень жду про Kafka и Kubernetes

  • @StoneWeaver_RU
    @StoneWeaver_RU 4 года назад +1

    О, свежачок! Шик! Лайкос за видос!

  • @andreyguzik2675
    @andreyguzik2675 4 года назад +8

    Лайкаю как обычно)

  • @krasavchikable
    @krasavchikable 4 года назад +1

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

  • @movagefox3577
    @movagefox3577 4 года назад +1

    Спасибо, снова очень познавательный урок! А насчет пожеланий, хотелось бы увидеть работу camel со spring boot в микросервисной архитектуре.

  • @witoldjnc4754
    @witoldjnc4754 4 года назад +2

    Буквально месяц назад кинули на проект с кемелом и дсл, спасибо.

  • @bonusk6440
    @bonusk6440 3 года назад

    Андрей, спасибо! Хотелось бы больше видосов про Camel. Было б интересно посмотреть про Spring + Camel + JDBC

  • @alexander.shakhov
    @alexander.shakhov 4 года назад

    Отлично, спасибо Андрей)

  • @АлексейБеляев-е3ы
    @АлексейБеляев-е3ы 3 года назад

    Кайф! спасибо! Ещё было бы интересно посмотреть про такую связку как AtlasMap + Camel

  • @ЭльшанМахмудов-ю8с
    @ЭльшанМахмудов-ю8с 4 года назад

    Просто Шикарно! Лайк!

  • @iryna6389
    @iryna6389 4 года назад

    Спасибищеее! Очень в тему!!!!

  • @tomozi1
    @tomozi1 4 года назад

    Отличная технология

  • @maksimae866
    @maksimae866 4 года назад

    спасибо за интересную информацию!

  • @yuriikoval2453
    @yuriikoval2453 4 года назад

    Отличное видео! Cпасибо)

  • @evgenygryaznov2625
    @evgenygryaznov2625 4 года назад

    Ооо, вот прям спасибочки! Очень надеемся на продолжение

  • @ЖеняКириченко-л4т
    @ЖеняКириченко-л4т 4 года назад

    хороший формат, лайк)

  • @anatoliyvazhenin7096
    @anatoliyvazhenin7096 4 года назад

    Очень полезно, спасибо. А будет видео про Apache Camel + Blueprint XML с использованием CXF и деплоем на Apache Servicemix ?

  • @artemv3160
    @artemv3160 3 года назад

    Отличный концентрированный туториал. Спасибо!
    А можете поделиться, насколько хорошо Camel переживает ошибки, внезапные выключения?
    Есть ли возможность обновлять часть роутов на лету?

  • @non_holy6286
    @non_holy6286 2 года назад

    Ад, ад, аддуши за видосик!)

  • @starrlucky6549
    @starrlucky6549 4 года назад

    You're breathtaking

  • @renniqs1084
    @renniqs1084 4 года назад +1

    А Spring Integration делает тоже самое?

    • @letsCodeDru
      @letsCodeDru  4 года назад +3

      Ага. Только у верблюда синтаксис более вменяемый, на мой взгляд

    • @senin24
      @senin24 4 года назад +1

      @@letsCodeDru кэмл это мощный магический комбайн, спринг интегрейшн проще и понятней

  • @andrewsapolsky3880
    @andrewsapolsky3880 4 года назад

    Изменяете Kubuntu c виндой?

    • @letsCodeDru
      @letsCodeDru  4 года назад

      сложный период в жизни))

  • @alexchurin8466
    @alexchurin8466 4 года назад

    Спасибо лайк за очередное крутое видео . Как всегда почувствовал себя 0. Жду видео, где можно все это на сложном высоконагруженном проекте использовать. Например пишем сервис и он работает всегда. Например бот на api любом. Пишет в бд. Рассылает письма и делает звонки на астере или смс отправляет. Так сервис крутой, с файликами не интересно ведь. Хочется глобального чего то... А ведь jdbc не интересен с тремя записями. Sql крут кода записей больше 200k. А тут 3 записи и толком не понять зачем фильтр на параметр больше первой записи... Интересно когда желаешь за автором код сразу же повторить с маленькими изменениями

  • @raiupov
    @raiupov 4 года назад

    Спасибо Dru. Очень полезно. У нас все кастомно написано, на bash. боль... :)

  • @lightkingbeknazarov426
    @lightkingbeknazarov426 4 года назад +2

    Здравствуйте! А как с вами можно связаться?
    Есть ли у вас сборник курсов про микросервисы на спринге, апачи кафка и спарк в семействе хадуп? Можно ли купить и тд... И про спринг клоуд тоже было бы неплохо)

  • @ibraim3197
    @ibraim3197 4 года назад +2

    У тебя самые крутые туториалы. Scala + Akka, если ведаешь, плиз

    • @letsCodeDru
      @letsCodeDru  4 года назад +3

      Скалу не оч. Перемудрил Одерски, кмк

    • @ЭльшанМахмудов-ю8с
      @ЭльшанМахмудов-ю8с 4 года назад +2

      @@letsCodeDru А может что то многопоточное снимешь? Вроде инфы в инете много, а вот чего то конкретного нет. К примеру для таких типов задач испотльзуй то то, а если вон то, тогда ФоркДжоинПулл)) Но не исключаю вероятности что это может быть мало кому интересно, далеко не везде это нужно да и не каждый сеньор сечет в этом деле)

  • @timurakhalaya6289
    @timurakhalaya6289 3 года назад

    очень годно

  • @НикитаН-й2н
    @НикитаН-й2н 4 года назад

    Опять без фейлов в конце, неужели все идеально стало xD

    • @letsCodeDru
      @letsCodeDru  4 года назад

      Они не смешные последнее время. Там слёзы, мат, стенания. Вам оно надо?)

  • @misha3660
    @misha3660 3 года назад

    подскажите пожалуйста, у меня есть файловая система, на которой постоянно появляются новые папки. в папках постоянно создаются новые файлы (имя - время создание), эти файлы модифицируются в рантайме. и по достижению количества строк либо времени после создания (порядка 6 часов) перестают модифицироваться и остаются в системе навечно, запись продолжается в новые файлы,
    файлы создаются во вложенных папках, которые имеют иерархию
    корень
    -устрйоство
    ---год
    -----месяц
    -------день
    ---------"12-09-2021-13-59.txt"
    ---------"12-09-2021-20-17.txt"
    я должен все эти файлы синхронизировать с БД через другой микросервис (который с бд и работает) и хочу для этих целей использовать Apache Camel.
    у меня есть несколько абстрактных задач:
    1) при первом запуске обработать существующие файлы
    2) после этапа один сохранять изминения
    3) при перезапуске приложения не начать всю работу сначала, а продолжить с места остановки
    извиняюсь за наглость: могли бы вы ответить на пару вопросов:
    1) хороший ли для этого выбор Apache Camel
    2) описать абстрактно структуру сервиса и наиболее подходящие компоненты
    я смотрю на "File" и "FileWatch". но мне жутко не нравится, что нужно писать какой-то сервис который следил бы за статусом процесса и записывал его... в еще один файл) на инстансе нет БД

  • @iryna6389
    @iryna6389 4 года назад +3

    Плиззз, сними видос про разные методы кеширования, какие бывают (Guava, Spring, и т.д) чем пользуешься ты? Было бы очень интересно

  • @edmond-dantes-1796
    @edmond-dantes-1796 4 года назад +1

    "я им говорю, не ЛОЖТЕ, а они все равно ЛОЖАТ". Правильнее говорить "класть")

    • @АлександрТабатадзе
      @АлександрТабатадзе 4 года назад +2

      Да клал я на ваше ложить и ложил на ваше класть ;)

    • @letsCodeDru
      @letsCodeDru  4 года назад +2

      Да, есть такая проблема. Работаю над ней

    • @alexxis246
      @alexxis246 4 года назад

      Говорю "ПОКЛАСТЬ"

    • @kolob204
      @kolob204 4 года назад +2

      @@letsCodeDru имхо, если человек хороший специалист в своей теме, он может позволить себе лОжить)))

  • @АлександрПлеханов-й9ы

    Сталкивался с camel, не понравилось. Вместо того чтобы упрощать, все только усложняется. Знаете как Camel по умолчанию читает ответное сообщение из MQ? Он добавляет заголовок JMSCorrelationId c произвольным значением, и ожидает ответное сообщение с таким же заголовком и значением.
    Проблема в том, что обычно в ответном сообщении в заголовок JMSCorrelationId кладут значение из id входящего сообщения.
    Как настроены эти интеграции это отдельный вопрос.
    Переходы между роутами можно понять только поиском по проекту.

  • @alexnovik6223
    @alexnovik6223 4 года назад +1

    Не 8 строк, а только 7 - можете перепроверить. Ваш QA.

  • @galua
    @galua 4 года назад +5

    Почему малоизвестный?)

    • @letsCodeDru
      @letsCodeDru  4 года назад +2

      хз. Почему-то мало кто о нём знает

    • @mxwild1085
      @mxwild1085 4 года назад

      @@letsCodeDru В данный момент с его помощью пишем.

    • @Ivan54r
      @Ivan54r 4 года назад

      @@mxwild1085 чем он лучше обычного кода?

    • @mxwild1085
      @mxwild1085 4 года назад

      @@Ivan54r Меньше писать приходится.

  • @mike_mi_mike
    @mike_mi_mike 4 года назад

    Эх вышло бы видео на 2 дня раньше, сделал бы тестовое задание намного быстрее

    • @letsCodeDru
      @letsCodeDru  4 года назад +4

      Вот такая селяви)

  • @ЖеняКириченко-л4т
    @ЖеняКириченко-л4т 4 года назад

    го видос по kafka

  • @PositiveAlex
    @PositiveAlex 4 года назад

    Кладут, а не ложат.

    • @letsCodeDru
      @letsCodeDru  4 года назад

      Угу :( тяжело переучить себя

    • @PositiveAlex
      @PositiveAlex 4 года назад

      @@letsCodeDru ничего, а так хороший обзор, спасибо. Лайк поставил. Ещё вопрос, почему нельзя в репозиторий добавлять эту штуку? Правильно ли я понимаю, что это не для операций разового получения данных, а для создания отдельных внутренних сервисов, которые осуществляют транспорт данных в режиме реального времени?

  • @shurashura9675
    @shurashura9675 4 года назад

    Резало слух - ложит. Лучше скажите - положить или класть

  • @taras7630
    @taras7630 4 года назад +2

    первонах

    • @Hygge_9
      @Hygge_9 4 года назад

      не успель :(

    • @letsCodeDru
      @letsCodeDru  4 года назад +2

      @@Hygge_9 Не переживай, у тебя еще будет шанс)

  • @nightwelf
    @nightwelf 2 года назад

    Фигня какая-то какой смысл от него?

    • @ВасяВаслин
      @ВасяВаслин 2 года назад

      Удобство использования одного инструмента для работы с чем угодно