Настраиваемые задержки в образе Kafka docker - PullRequest
1 голос
/ 03 августа 2020

Я обнаружил в своем коде состояние гонки при использовании двух различных событий Kafka, которые 99 раз из 100 прибывают в «правильном» порядке. Я исправил ошибку и хотел бы ее доказать.

За один раз я готов поставить Thread.sleep() в код потребителя, однако было бы здорово иметь локальный брокер kafka, который я могу настроить для введения задержек по различным критериям. Что-то похожее на то, что Mountebank предлагает вам для HTTP, если вы сталкивались с этим.

Я провожу тестирование методом черного ящика, развертывая docker образ приложения вместе с db / kafka / http server docker изображения по мере необходимости. Было бы здорово иметь настраиваемый образ docker Kafka, знаете ли вы о таком?

Заранее спасибо.

1 Ответ

0 голосов
/ 04 августа 2020

Каждый основной образ docker kafka можно настроить для любой конфигурации server.properties.

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

Если вам нужен порядок, вы должны использовать один topi c с одним разделом или заблокировать потоки потребителей с помощью max.poll.records=1 и приостановить работу одного потребителя, пока другой работает (что будет работать очень медленно, скорее всего)

есть локальный брокер kafka

Для этого вам не нужен Docker, особенно если вы используете тесты Spring EmbeddedKafka

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...