Создать топи c со стороны потребителя - PullRequest
0 голосов
/ 16 апреля 2020

Я не уверен, возможно ли это или нет. Но я хочу спросить здесь, потому что не смог найти какой-либо соответствующий ресурс в Интернете.

Возможно ли это, я мог бы создать topi c со стороны потребителя?

Обычно мы создаем потребителей для доступа к существующим темы в брокере. (Создано на уровне брокера)

Но есть ли способ, я мог бы создать topi c и затем использовать его? Это все работа, которую я хочу сделать на потребительской конфигурации. Сначала создайте if not exists, а затем потребляйте его.

Это возможно или не является правильным вопросом?

1 Ответ

0 голосов
/ 16 апреля 2020

, если вы хотите сделать это, вы можете вызвать исключение. Если потребитель попытается подключиться к topi c и не был создан, вы можете запустить функцию, которая создает AdminClient, где вы можете создать topi c.

Но вам все равно нужно заполнить его, чтобы вы могли создать поток с помощью Worker (Источник + Задача для xml) и заполнить им топи c (в той же функции)!

Здесь создание топи c с AdminCLient:

        Properties properties = new Properties();
        properties.put(ConsumerConfig.BOOTSTRAP_SERVERS_CONFIG, "localhost:9092");
        properties.put(ConsumerConfig.ALLOW_AUTO_CREATE_TOPICS_CONFIG, true);
        Admin adminClient = Admin.create(properties);
        adminClient.createTopics(Collections.singleton(new NewTopic( {Topic name}, 1, (short) 1)));

Надеюсь, это было полезно

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