"много" консьюмеров будут одновременно делать poll(0). И если да, то сколько таких консьюмеров можно считать "много"?
It depends
Под завалить вы понимаете просто нагрузить до просадки или довести до краша?
да у нас случайно ошиблись в конфигурации одного сервиса, получилось порядка 12к consumer-ов на один топик, поплохело всему кластеру
poll != отправить_запрос_на_сервер Уже начиная с того что к моменту когда ты дергаешь poll все запросы на брокеры уже отправлены. Тобишь через poll(0) максимум что ты завалишь это одно ядро cpu но не на брокере а на консумере, потому как poll видя что запросы на брокеры отправлены но ещё не завершены просто вернёт тебе пустой список рекордов ни как не проивзаимодействовав с брокерами, считай что крутишь цикл while(true). Если целью является хорошенько нагрузить брокер то нужно на консумере fetch.max.wait.ms=1(не помню к чему приведёт 0), вот тогда при большом количестве консумеров может стать жарко.
Обсуждают сегодня