172 похожих чатов

Подскажите. у меня есть приложение на джаве. фактически оно потребляет

около 0.8 ЦПУ. я выставил лимит на под в 0.9 ЦПУ. у меня на ноде развернулось 2 пода (нода на 2 ЦПУ) и теперь постоянно тротлинг и загрузка проца на ноде под 100%. как только я убираю один под с ноды, то все становится ок и загрка проца около 20%. т.е. когда два пода на ноде утилизация процаа 100%, когда один 20%. как такое может быть?

9 ответов

19 просмотров

у тебя структура загрузки проца какая ?

>у меня на ноде Что за нода? Тебя не Hyper-Threading побеждает?

Jeison-Mortyre Автор вопроса

Это известная бага, когда тротлится раньше, чем все треды в сумме потребляют. Чинили с переменным успехом в последних ядрах. Вобщем уберите лимиты, дайте жаве подышать, выставляйте реквесты согласно желаемому количеству подов на ноде.

или следите за тротлингом, и выставляйте их больше если сильно тротлится. Наверное даже можно vpa заставить следить за метрикой тротлинга и выставлять лимиты в зависимости от неё. Но это не точно

Нужно в 2-3 раза больше ставить исходя их того как написан код. Java она же порождает новые треды (потоки) и ест память в соответствии с нагрузкой. Ставить лимиты надо по пиковой загрузке для Pod в которых крутится Java а не по средней.

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта