Могут ли производители кафки предоставлять данные по квоте при наличии реплик?

У меня есть производитель кафки, принадлежащий клиенту с идентификатором клиента - "p1" и квотой 50 МБ/с.

Теперь я проверил производительность своего производителя с помощью «bin/kafka-producer-perf-test.sh» и смог получить пропускную способность около 50 МБ/с при записи в раздел без реплики.

Я провел тот же эксперимент на разделе с тремя репликами. Но на этот раз пропускная способность была снижена до 30 МБ/с.

Мой вопрос в том, что kafka не должна позволять производителю по-прежнему получать пропускную способность 50 МБ / с даже при наличии реплик? В системе больше ничего не работает, поэтому я не уверен, почему это происходит?


person brokendreams    schedule 02.05.2017    source источник


Ответы (1)


Вы изменили конфигурацию acks производителя? Из вашего описания кажется, что acks установлено на all, поэтому производитель ждет, пока отправленные данные будут реплицированы между тремя брокерами, что влияет на пропускную способность. Если вы не меняли acks, попробуйте установить его на 0, тогда производитель вообще не будет ждать подтверждения от сервера, просто чтобы посмотреть, повлияет ли это на пропускную способность.

person streetturtle    schedule 02.05.2017
comment
Я хочу подтверждение от всех (синхронная репликация). Мое основное сомнение заключается в том, что, поскольку в сети больше ничего нет, не должна ли kafka по-прежнему позволять производителю получать пропускную способность 50 МБ / с. - person brokendreams; 02.05.2017