Что делает брокер, когда несколько производителей пишут одно и то же сообщение брокеру?И еще один связанный вопрос (из-за ограничения в 150 символов) - PullRequest
0 голосов
/ 26 марта 2019

Производитель A пишет сообщение брокеру A (раздел 1), а производитель B пишет то же сообщение брокеру A (раздел 1). Что происходит с сообщением или брокером?

Я предполагаю, что поскольку есть одно и то же сообщение, источник B останавливает то же сообщение и переходит к следующей части сообщения?

У меня есть еще один вопрос. Если вы хотите отправить файл фильма, например, в Kafka Cluster, Могу ли я сделать 4 продюсеров и заставить их отправлять разные части этого фильма в кластер? Например, , Продюсер A отправляет первую часть фильма, продюсер B отправляет вторую часть фильма и так далее. (Потому что это работает эффективнее, чем один производитель.)

1 Ответ

2 голосов
/ 26 марта 2019
  1. Если 2 производителя отправляют одно и то же сообщение в Kafka, сообщение пишется дважды. Кафка не проверяет содержание сообщений. То же самое, если вы дважды позвоните продюсеру send(), вы получите 2 сообщения на Кафке.

  2. Если вы хотите отправлять большие объемы данных, рекомендуется использовать несколько производителей для разделения работы. Кроме того, Kafka на самом деле не предназначен для обработки сообщений размером более 1 ГБ, поэтому разделение больших файлов на более мелкие части является хорошей идеей. Просто будьте осторожны при разделении ваших данных, потому что вам, возможно, придется собирать их на стороне потребителя!

...