У меня есть кластер потребителей (около 50 экземпляров), использующих разделы kafka.
Я заметил, что существует один сервер, который постоянно работает медленно.Его использование процессора всегда составляет около 80-100%.В то время как другие разделы составляют около 50%.
Первоначально я думал, что есть небольшая вероятность того, что это зависит от трафика, поэтому я вручную переключаю разделы, которые потребляет медленный загрузчик.
Однако яне наблюдал увеличения скорости обработки.
Я также не вижу, как процессор крадет у iostat
, но, поскольку все потребители используют один и тот же код, я подозреваю, что в оборудовании есть некоторая горлышко бутылки.
К сожалению, я не могу просто заменить сервер, если не смогу предоставить убедительные доказательства того, что проблема с оборудованием.
Поэтому я хочу написать скрипт нагрузочного тестирования, который точно указывает на горлышко бутылки.
Мой план состоит в том, чтобы написать цикл while в python, который выполняет n вычислений, и выяснить, какое максимальное вычисление может выполнить медленный потребитель, а также какое максимальное вычисление может сделать быстрый потребитель.
Какую другую стратегию тестирования я могу сделать?
Возможно, мне следует проверить горлышко диска, написав скрипт на python в txt fиль?
Вот быстрый потребитель iostat
avg-cpu: %user %nice %system %iowait %steal %idle
50.01 0.00 3.96 0.13 0.12 45.77
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
xvda 1.06 0.16 11.46 422953 30331733
xvdb 377.63 0.01 46937.99 35897 124281808572
xvdc 373.43 0.01 46648.25 26603 123514631628
md0 762.53 0.01 93586.24 22235 247796440032
Вот медленный потребительский iostat
avg-cpu: %user %nice %system %iowait %steal %idle
81.58 0.00 5.28 0.11 0.06 12.98
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
xvda 1.02 0.40 13.74 371145 12685265
xvdb 332.85 0.02 40775.06 18229 37636091096
xvdc 327.42 0.01 40514.44 10899 37395540132
md0 676.47 0.01 81289.50 11287 75031631060