Современный Фреймворк Spring Boot позволяет писать очень многие вещи писать современным программистам в две-три строчки, просто подключив нужную зависимость, для этого нужно уметь хорошо ориентироваться в возможностях этого Фреймворка, но есть вещи, которые всё же приходится писать руками. В событийном сегменте сегодня для разработки очень популярна Kafka и Spring Boot её поддерживает, но, если рассматривать формат сериализации сообщений Avro, ключевая особенность которого максимально возможное сжатие и отсутствие ключей в передаваемых сообщениях, а наличие только значений.  Сегодня Spring Boot поддерживает не в полной мере Avro, для корректной работы этой технологи приходится использовать конфигурирование на основе обычного Spring, не Boot. А дело вот в чём: Здесь можно задать KafkaAvroSerializer, но эта штука не поддерживает одно важное для Avro формата поле – URL до Schema Registry.  Schema Registry – инфраструктурный компонент для хранения схем в формате Avro. По этой причине приходится использовать ручное конфигурирование бинов, при помощи java конфигураций. Выглядит это так: В моём случае требовалось написать потребителя для messaging системы основанной на Kafka с применением Avro  сериализации, и когда описанные выше хитрости были применены и требуемый функционал заработал потребовалось протестировать результат перед деплоем на продакшн.  Функциональную часть я опущу, но в таких задачах на стороне consumer часто требуется записать результат в реляционную базу данных, а это хотелось бы проверить под нагрузкой – как будет работать при получениях сотен тысяч или миллиона событий за N времени. Для этого пришлось написать свой собственный Эмулятор consumer, который бы позволил на тестовых стендах проверить поведение испытуемого приложения. Конфигурирование бина producer выглядело в моём случае так: Если у вас используется SSL – нужно будет параметризовать значения хранилища ключей и сертификатов, а также паролей к ним. И тут вот какая тонкость - в этом конфиге не встречается слово Avro! И вот почему: для того чтобы протестировать консьюмера – продюсеру не обязательно знать бизнес-логику и даже не нужно разбираться в формате передаваемых сообщений, для теста может вполне сгодиться не параметризованное сообщение, которое будет направляться в исходном виде. А для этого нужно две вещи:  перехватить сообщение в виде набора байтов. отправить нужное количество cообщений в виде набора байтов. Для решения второй задачи хорошо подходит ByteArraySerializer упомянутый выше в примере кода, всё что остаётся сохранить в файлик нужный набор байт, а затем считать его и отправить его консьюмером цикле нужное количество раз с нужным интервалом. С отправкой сложностей возникнуть не должно, можно использовать, например, эту https://www.baeldung.com/spring-kafka статью по написанbю Hello, world! продюсера. Так и считать сообщение не сложно, может пригодиться консольный консьюмер который явит набор байт, но я сторонник графических интерфейсов, что возможно осудят бородатые программисты, и для этой задачи хорошо подошла программа Kafka Tools, которая была переименована в Offset Explorer и доступна по ссылке https://kafkatool.com/download.html  Именно в ней можно легко подключившись к Kafka топику, взять нужное сообщение в виде массива байт и использовать в дальнейшем. Таких не сложных действий отказывается достаточно для проведения нагрузочного тестирования Kafka Avro консьюмера. А вот не менее популярное приложение – AKHQ использовать для данных целей не удалось, так как оно не позволяет сохранить нужный набор байт. Спасибо за прочтение.  Java dev