Я пытаюсь обновить Kafka в академическом проекте и нашел этот класс в 0.8, который устарел в Kafka 2.1
Я ищу помощи.
Где ZKUtils устарела.
synchronized public void createTopicInZk (HETopic heTopic, int numPartitions, int replicationFactor)
{
ZkClient zkClient = getNewZkClient();
try {
AdminUtils.createTopic(zkClient,
heTopic.getCompositeTopic(),
numPartitions,
replicationFactor,
new Properties()
);
} finally {
if (zkClient != null) zkClient.close();
}
}
Тогда я вижу ошибку, как ожидание ZkUtil вместо ZKClient (первый аргумент для AdminUtils.createTopic)
Итак, изменили код на
synchronized public void createTopicInZk (HETopic heTopic, int numPartitions, int replicationFactor)
{
ZkClient zkClient = getNewZkClient();
**ZkUtils zkUtils = ZkUtils.apply(zkClient, false);**
try {
AdminUtils.createTopic(zkUtils,
heTopic.getCompositeTopic(),
numPartitions,
replicationFactor,
new Properties()
);
} finally {
if (zkClient != null) zkClient.close();
}
}
Это решение работает, но я получаю предупреждающее сообщение об устаревшем ZkUtils во время работы. Какая новая замена для ZKUtils?