Имя: Пароль:
1C
1С v8
счетчик Private bytes (rphost)
,
0 madnus
 
08.03.22
01:09
Настраивал счетчики:

\Memory\Available Bytes
\Memory\% Committed Bytes In Use
\Process(rphost)\Virtual Bytes
\Process(rphost)\Private Bytes

При запуске тест-центра на графике все счетчики быть относительно плавные, без резких пиков и падений, кроме счетчика \Process(rphost)\Private Bytes. Там был резкий скачок верх и потом возврат к среднему значению.
В цифрах, к сожалению, значения счетчиков не помню и возможности показать скрин нету.

Process\Private Bytes показывает объем выделенной памяти для процесса

Вопрос: в каких ситуациях такое возможно такое поведение счетчиков ?

Хочу попробовать воспроизвести у себя в базе, но пока не понимаю как.
Могут ли настройки в консоли кластера влиять на то, как будет выделять память для процесса ?
1 OldCondom
 
08.03.22
01:31
Один из тысяч вариантов - длительные блокировки. Они в памяти висят.
Еще чтение xls в 10 тыс строк на ум пришло
2 OldCondom
 
08.03.22
01:33
Открой транзакцию, впихни в нее записи в регистры в цикле
3 OldCondom
 
08.03.22
01:34
Что это даст? Ничего. Но скачущие цифры увидишь.
4 madnus
 
08.03.22
01:40
(3) так вопрос не просто в скачках всех счетчиков. Это воспроизвести не сложно. А вот как сделать, чтобы только один счетчик скаканул, а остальные были плавные, вот этого я не знаю.
5 OldCondom
 
08.03.22
01:45
А может это скачок в 500 мб на rphost , в то время как available memory каких то 500мб на графике не различить?
6 rphosts
 
08.03.22
05:09
Сделай запрос к таблице в которой хранятся большие файлы например так:
Запрос.текст = "Выбрать Первые 10000 ....";
Результат = ЗАпрос.выполнить().Выгрузить();

Пока Результат.Количество()>0 Цикл
     Результат.Удалить(0);
КонецЦикла;

действо совершенно бессмысленное но резкий пик по памяти с плавным (недостаточно плавное - поставь задержку после удаления)) получишь
7 madnus
 
08.03.22
11:10
(5) возможно. Но у меня также был счетчик \Process(rphost)\Virtual Bytes. Там тоже скачков не было
8 OldCondom
 
08.03.22
11:37
Private Bytes are what your app has actually allocated, but include pagefile usage;
    Working Set is the non-paged Private Bytes plus memory-mapped files;
    Virtual Bytes are the Working Set plus paged Private Bytes and standby list.

Я так понял virtual != private + paged files, а только paged files. Соответственно туда не входит захваченная память.
9 OldCondom
 
08.03.22
11:38
а хотя там же еще + working ser. Ну тогда хз)
10 H A D G E H O G s
 
08.03.22
11:43
Вот вам все про память
https://www.gunsmoker.ru/2011/06/blog-post.html
11 OldCondom
 
08.03.22
11:54
https://docs.microsoft.com/en-us/iis/troubleshoot/performance-issues/troubleshooting-native-memory-leak-in-an-iis-7x-application-pool#data-collection

тут пишут, что утечка имеет место быть, если private + virtual растут, а avaible падает. Видимо все таки это норма, если скакнул private, а другое в норме.
12 madnus
 
08.03.22
12:17
(11) это хорошо. Но мне самому очень интересно, как такое можно воспроизвести у себя в базе. В статьях на ИТС рекомендуется также устанавливать счетчик private. Но если проблема выявляется только при скачке двух(обязательно) счетчиков, тогда смысл вообще private ставить ? Достаточно отслеживать только virtual. Или может быть ситуация, что virtual  скачет, а private ровный ?
13 OldCondom
 
08.03.22
12:22
судя по обсуждениям на разных ресурсах, так никто и не определился в различиях этих двух показателей.
14 madnus
 
08.03.22
12:31
(13) я столкнулся с такой ситуацией на экзамене эксперта. Была задача про память и утверждалось, что проблема есть. Надо доказать. Я наcтроил 4 счетчика и на графике видел резкий пик только по private, остальные были волнистые без резких скачков и пиков. Такое поведение меня смутило, т.к. при подготовке все примеры, которые я делал, влияли на все 4 счетчика. И мне непонятно, почему так и как использовать такие показатели для обоснования проблем с памятью. Возможно такое поведение private нормальное и нужно смотреть на остальные счетчики, но не на график, а именно показатели мин, макс и среднее значение. Сравнить, например среднее значение и макс. Если разницы в 100-200мб, то использовать это как обоснование проблемы с памятью. Но как то не очень убедительно. Пытаюсь разобраться, чтобы быть уверенным на следующей сдаче
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.