Обновить
20.73

Apache *

Свободный веб-сервер

Сначала показывать
Порог рейтинга
Уровень сложности

Kafka или REST для взаимодействия между микросервисами?

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров7.6K

Apache Kafka и REST (Representational State Transfer) — два популярных стиля взаимодействия, используемых в архитектуре микросервисов. У каждого из них есть свои сильные стороны и характеристики, которые делают их подходящими для различных сценариев. В этой статье мы рассмотрим технические аспекты использования Kafka и REST для межсервисного взаимодействия, приведем примеры и обобщим их ключевые моменты в сравнительной таблице.

Сравнить подходы

Новости

Apache Camel и его место в экосистеме интеграционных решений

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1K

Сегодня поговорим не просто об инструменте, а о фундаменте, на котором строятся современные интеграционные платформы. Речь пойдет об Apache Camel – открытом интеграционном фреймворке, который лежит в основе таких решений, как Red Hat Fuse, Talend и нашей собственной платформы от «Диасофт» – Digital Q.Integration.

Важно подчеркнуть: мы не используем экспериментальные или нишевые стеки. Наша платформа построена на проверенной, зрелой и широко распространенной связке: Apache Camel и Spring Boot. Это дает стабильность, совместимость с корпоративной инфраструктурой и возможность глубоко интегрироваться с экосистемой Spring – от безопасности до мониторинга и распределенной трассировки.

Читать далее

Spark, DataSphere и немного магии: как мы строим аналитическую платформу в облаке для банка

Время на прочтение7 мин
Количество просмотров337

Для решения классических аналитических задач в банке дата‑специалисты обрабатывают миллиарды транзакций. Поэтому создание единого информационного пространства для работы с большими объёмами данных потребует решить как задачи оптимизации производительности и обеспечения безопасности, так и задачи удобства для пользователей — и найти баланс между ними. 

Сергей Виноградов на конференции Data&ML2Business рассказал про разработку и построение DWH для задач Яндекс Пэй. В этой статье — дополненный рассказ о том, как устроена аналитическая платформа на базе Greenplum® и ClickHouse®, которую решили строить на базе managed‑сервисов в облаке. А также о том, как жизнь аналитиков облегчает связка Apache Spark™ и Jupyter‑ноутбуков в Yandex DataSphere.

Читать далее

ActiveMQ Artemis vs Apache Kafka

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров2.8K

Добрый день. Сегодня мы поговорим о двух мощных технологиях для асинхронного обмена данными — ActiveMQ Artemis и Apache Kafka. Мы разберемся, что они из себя представляют, как устроены под капотом, и главное — в каких ситуациях стоит выбрать одну, а в каких другую.


Наш план на сегодня довольно насыщенный. Мы начнем с того, почему вообще все пришли к асинхронному общению сервисов. Затем подробно разберем ActiveMQ Artemis — что это и какие задачи решает. Заглянем в его техническую архитектуру, чтобы понять источник его производительности. После этого мы кратко вспомним основы Apache Kafka, чтобы затем перейти к самому интересному — детальному сравнению. Мы составим четкие рекомендации, поговорим о нагрузочных характеристиках и подведем итоги.

Читать далее

Kafka для начинающих: работа с брокером сообщений на практике

Уровень сложностиСредний
Время на прочтение18 мин
Количество просмотров6.9K

Как работать с Kafka на практике, используя Spring Boot?
Разбираем базовые практические моменты на примере интернет-магазина.

Простым языком и с примерами кода о настройке Kafka-кластера, об основных аннотациях и методах Spring Boot для работы с Kafka.

Читать далее

Kafka для начинающих: откуда такой спрос и зачем нужна эта технология

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров45K

Почему REST API не всегда подходит для общения микросервисов?
Разбираем на примере интернет-магазина, как Kafka решает проблемы синхронной коммуникации, масштабирования и отказоустойчивости.

Простыми словами о топиках, партициях, consumer groups — для начинающих разработчиков.

Читать далее

Распределенные вычисления в Apache Ignite 3

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров1.6K

В статье разбираются возможности распределённых вычислений в Apache Ignite 3. Покажу, как развернуть кластер в Docker, задеплоить собственные джобы и сравнить Ignite 3 с предыдущей версией. Затронем новые возможности Ignite как полноценной распределённой платформы, а не просто in-memory кэша.

Читать далее

Apache Kafka: ZooKeeper vs KRaft — полное сравнение подходов

Время на прочтение10 мин
Количество просмотров4.7K

Apache Kafka — один из самых популярных распределенных систем потоковой передачи данных. Исторически Kafka использовала Apache ZooKeeper для управления кластером, но с версии 2.8.0 появилась альтернатива — KRaft (Kafka Raft Metadata mode). 

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

И, чтобы статья была практико-ориентированной, мы рассмотрим примеры того, как можно поднять в Docker оба варианта кластера. 

Перейти к сравнению

Что нужно знать системному аналитику о Apache Cassandra

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров4.3K

Всем привет! Я Илья Глазунов, системный аналитик в проекте карточного хранилища T-Pay Online — быстрого способа оплаты для наших клиентов. В качестве БД в проекте хранилища мы используем Apache Cassandra. В статье — обзорный материал, который поможет познакомиться с БД.

В культуре Т-Банка важно, чтобы системные аналитики знали особенности интеграционных схем с другими компонентами, умели строить схемы БД так, чтобы минимизировать издержки, связанные с i/o-операциями. А еще — чтобы могли вычислять узкие места в кейсах и влиять на выбор верхнеуровневого компонента в проекте. 

Когда мы выбирали БД для нашего проекта, столкнулись с тем, что существует мало материалов, которые бы сжато передавали главные особенности Apache Cassandra без глобальных неточностей и на русском языке для первичного ознакомления. Поэтому решили помочь тем, кто окажется в таком же положении, что и мы. 

Разберем, для чего нужна Cassandra, рассмотрим основные концепции архитектуры, разложим принципы проектирования БД с ее особенностями модели данных и затронем некоторые принципы расчета конфигурирования БД Cassandra.

Читать далее

CyberOffice.pro: «Зачем?» и «Почему?»

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров530

Известно, CyberOffice.pro создан на основе Apache OpenOffice с малыми доработками «для себя и для друзей».

Далее по тексту ответы на вопросы: «Зачем?» и «Почему?».

Читать далее

Динамическое планирование задач в NiFi

Время на прочтение9 мин
Количество просмотров439

Статья о том, какие бывают ограничения самописных планировщиков задач и как мы перевели весь процесс планирования в NiFi, сделав его более прозрачным.

Читать далее

Spark Connect. А нужны ли перемены?

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров1.4K

Привет, Хабр! Я Станислав Габдулгазиев, архитектор департамента поддержки продаж Arenadata. Apache Spark давно и прочно занял место одного из ключевых инструментов в арсенале инженеров и дата-сайентистов, работающих с большими данными. Его способность быстро обрабатывать огромные объёмы информации, гибкость за счёт поддержки множества языков (Python, Scala, Java, SQL) и возможность решать самые разнообразные задачи — от сложных ETL до машинного обучения и стриминга — делают его незаменимым инструментом в мире анализа данных.

Читать далее

Event Driven Design и ksqlDB

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров2K

На конференции Web 2.0 в 2006 году Marissa Mayer из Google указала на проблему, что дополнительные полсекунды задержки приводили к снижению поискового трафика примерно на 20%. Amazon сообщал о похожем эффекте: каждые дополнительные 100 мс уменьшали продажи примерно на 1%. 

Большие задержки времени отклика чаще можно встретить в аналитических SQL-запросах, так как запрос требует обработки больших блоков данных. Особенно сильно задержки влияют на клиентов с длительной историей покупок. Именно они чаще всего оказываются в верхних перцентилях времени отклика — а это те самые пользователи, которых компании меньше всего хотят терять. 

Конференция была проведена почти 20 лет назад, компьютерные технологии за это время стали демократичнее, что привело к увеличению количества пользователей и продуктов. Проблема задержек не исчезла — наоборот, она стала острее: чем больше информации накапливают сервисы, тем тяжелее становится её обработка. Чтобы справиться с нагрузкой, приходилось менять архитектурные подходы к хранению и обработке данных. В статье мы разберем один из них – event-driven design.

Читать далее

Ближайшие события

Superset deep-linking: как Rison и Jinja превращают сводный дашборд в инструмент фокус-анализа

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров2.3K

За один клик из сводного дашборда — на «дочерний» с уже выставленными фильтрами. Разберём, как в Apache Superset прокидывать выбранные значения через URL-параметр native_filters в формате Rison и собирать ссылку Jinja-макросами.

Читать далее

Баги носят данные. Проверка Apache NiFi

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров1.1K

Сбор, обработка и перемещение данных — ключевые процессы в IT. Но что, если они нарушатся из-за коварных багов в коде? Рассказываем об ошибках, найденных статическим анализатором в проекте Apache NiFi.

Читать далее

Практика Kafka: проектирование топиков и обмен сообщениями

Уровень сложностиСредний
Время на прочтение29 мин
Количество просмотров13K

Ранее мы с вами развернули кластер Kafka. Что дальше?

В этой статье, как всегда, переходим от теории к практике: разработаем собственные продюсер и консьюмер на Python. Это будет не просто демонстрация кода — мы погрузимся в детали работы с Kafka.

Подробно разберем структуру сообщений Kafka,

Углубимся в основы проектирования: от топиков до настройки клиентов,

На практике изучим ключевые процессы: сериализациюпартиционированиебатчинг и сжатие данных.

Читать далее

RocksDB-стейт в стриминге: как ловить потерянные события и дубликаты

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров1K

В стриминговых пайплайнах всё чаще приходится иметь дело не только с бесконечным потоком данных, но и с состоянием, которое нужно хранить и восстанавливать без потерь. С выходом Spark 3.2 у разработчиков появилась возможность подключать RocksDB в качестве state store — и это открывает новые горизонты для работы с большими объёмами данных. В статье разбираем, как использовать этот подход на практике: от борьбы с дубликатами и пропущенными событиями до тонкостей конфигурации и устойчивости стриминга.

Читать далее

Kafka Reasign Partitions или как управлять топиками в kafka

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров2.8K

Привет, Хабр!

Меня зовут Дмитрий, вот уже два с половиной года я работаю DevOps инженером в крупной фин.тех компании. Специализируюсь, в основном, на брокерах сообщений. Большая часть сервисов у нас написана на java, нам нужна высокая отказоустойчивость, максимальная гарантия доставки и, поэтому, основной брокер — kafka. Собственно, о ней и хочу сегодня поговорить.

В статье расскажу о том, как я реализовал CLI для управления партициями в kafka, их переезд, балансировка.

Читать далее

Spark 4.0 на горизонте: Готовимся к апгрейду или остаёмся на проверенном 3.0?

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров1.9K

Привет, Хабр! Я Станислав Габдулгазиев, архитектор департамента поддержки продаж Arenadata. Кажется, ещё вчера мы радовались возможностям Apache Spark 3.0, разбирались с Adaptive Query Execution и наслаждались улучшениями Pandas API. Но мир больших данных не стоит на месте, и вот уже на подходе Apache Spark 4.0. Новый мажорный релиз — это всегда событие: он обещает новые фичи, прирост производительности и, конечно же, новые вызовы при миграции.

Apache Spark де-факто стал стандартом для распределённой обработки данных. От классических ETL-пайплайнов и SQL-аналитики до сложного машинного обучения и стриминга — Spark так или иначе задействован во многих современных data-платформах. Поэтому каждый новый релиз вызывает живой интерес у комьюнити: что там под капотом? Какие проблемы решены? Не сломается ли то, что работало годами?

Читать далее

Запускаем Kafka в режиме KRaft на Windows через WSL

Уровень сложностиПростой
Время на прочтение16 мин
Количество просмотров2.4K

Пошаговое руководство по установке и настройке кластера Apache Kafka с тремя брокерами в режиме KRaft (без ZooKeeper) на Windows — без виртуальных машин и Confluent Cloud.

Чтобы сделать кластер удобнее в использовании и приблизить его функциональность к облачным решениям, мы добавим веб-интерфейс на основе Kafka UI.

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

Для кого эта статья?

Для тех, кто только начинает работать с Kafka и хочет разобраться в её устройстве на практике.

Для тех, кто работает на Windows, но не хочет ставить виртуальную машину.

Для тех, кто хочет понять внутреннее устройство Kafka, а не просто запустить «чёрный ящик».

Читать далее
1
23 ...