Repository files navigation Задание на практическую работу по модулю Kafka
Задание #1 (Производители Kafka)
Необходимо реализовать модуль для загрузки объектов в Kafka;
Конфигурирование производителя должно быть вынесено в property-файл;
В качестве данных необходимо сформировать объекты, описывающие транзакцию (тип операции/сумма/счёт/дата);
Формат передачи данных JSON;
Перед отправкой сообщения должны валидироваться по схеме json-schema;
Разные типы операций должны записываться в разные партиции топика;
Продюсер должен быть максимально производительным и гарантировать доставку всех транзакций брокеру;
В случае сбоя продюсер должен фиксировать в логе ошибку, смещение и партицию битого сообщения;
Код должен быть задокументирован;
Логируем все значимые кейсы;
Не используем Spring или другие верхнеуровневые библиотеки.
Как работать над заданием?
Создаёте от main свою новую ветку с типом release и с именем по шаблону "Фамилия_Модуль_Задание" (например: release/taranov_kafka_1);
Клонируете проект из новой ветки в локальный репозиторий;
Делаете доработки у себя в локальном репозитории;
Заливаете свои доработки в новую feature ветку (например feature/taranov_kafka_1);
Делаете PR в свою исходную релизную ветку (из которой клонировали проект);
Условие успешной сдачи работы (критерии приемки)
Проект компилируется и запускается;
Контекст Spring, алгоритм выполнения и функциональность проекта должны остаться неизменны;
Результат review PR = approve.
You can’t perform that action at this time.