Требования к памяти Kafka
Я начинающий Кафка
мы ищем размер нашего кластера Кафки (5-узловой кластер) для обработки 17,000 событий/сек с каждым событием размером 600bytes. Мы планируем репликацию 3 и сохранение событий в течение недели
Я читал на странице документации Кафки
assuming you want to be able to buffer for 30 seconds and
compute your memory need as write_throughput*30.
Так что же это писать во всем? если это количество МБ в секунду-я смотрю на 9960MB/Sec
if consider that as my write throughput then the memory calculates as 292GB(9960MB/Sec * 30 )
Так что 292GB представляют Потребность в памяти для одного узла или всего кластера(5 узлов)
Я был бы очень признателен за некоторые идеи по размеру памяти и диска.
С уважением VB
1 ответов
Если ваш размер сообщения 600 байт с 17k msg / s, то ваша пропускная способность будет ~10MB/s [17000*600/(1024*1024)]. Если вы разделяете тему и используете 5 брокеров, с 3 репликами, которые будут составлять 10/5*3 = 6 МБ/с на брокера, вам понадобится буферизация, которая не должна быть проблемой на любом нормальном оборудовании. Буферизация 30s будет означать 180MB памяти.
в случае, если вы имели в виду размер сообщения 600kB, то вам нужно будет посмотреть на добавление большого количества очень быстрого хранения для достижения 6GB / s и на самом деле было бы лучше увеличить количество узлов кластера вместо этого.