Автор Тема: Как оценить затраты памяти за один клиент серверный вызов  (Прочитано 4956 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Алексей777

  • Пользователь
  • **
  • Сообщений: 10
  • ФИО: Пермяков Алексей Алексеевич
Здравствуйте, Коллеги!

Данный вопрос есть на аттестации, у меня, конечно есть вариант ответа, хочется подтверждения от специалистов :).

Заранее благодарю.

alex15650

  • Пользователь
  • **
  • Сообщений: 13
С помощью технологического журнала, событие CALL, свойства memory и memorypeak.

v_mazeich

  • Пользователь
  • **
  • Сообщений: 22
  • ФИО: Виталий Александрович
С помощью технологического журнала, событие CALL, свойства memory и memorypeak.

Данные свойства показывают объем памяти занятой, но не освобожденной за 1 вызов.

alex15650

  • Пользователь
  • **
  • Сообщений: 13
Цитировать
Данные свойства показывают объем памяти занятой, но не освобожденной за 1 вызов.

Ну я слышал такую рекомендацию. Каков ваш вариант в таком случае?

Jarinat

  • Новичок
  • *
  • Сообщений: 8
  • ФИО: Ринат
С помощью технологического журнала, событие CALL, свойства memory и memorypeak.

Данные свойства показывают объем памяти занятой, но не освобожденной за 1 вызов.
Memory – объем памяти в байтах, занятой, но не освобожденной за серверный вызов.
MemoryPeak – пиковое значение за вызов памяти в байтах, занятой, но не освобожденной.
Т.е. как я понимаю MemoryPeak - максимальный объем памяти, занимаемый данным CALL вызовом, при этом Memory может стремиться к нулю, а MemoryPeak будет большим. Тогда MemoryPeak будет правильным ответом.
« Последнее редактирование: Март 21, 2016, 09:12:49 am от Jarinat »

Алексей777

  • Пользователь
  • **
  • Сообщений: 10
  • ФИО: Пермяков Алексей Алексеевич
Я понимаю данный вопрос в следующем ключе: за 1 клиент серверный вызов затрачивается определенный объем памяти. В параметрах рабочего сервера есть свойство - безопасный расход памяти за один вызов. Т.е. мы уже понимаем, что у нас есть некий показатель, который может ограничить наш клиент-серверный вызов. Т.е. какой объем памяти будет являться критическим для нас, а какой нет за 1 клиент серверный вызов.
Вы же предлагаете оценивать критерием: были ли полностью очищены виртуальные ячейки памяти, после того как клиент-серверный вызов закончил свою работу. И в чем же тут оценка? Будем ставить оценки как в школе: 5, если нет утечки памяти, а 2 если есть :)?

Т.е. если за один клиент серверный вызов у нас было затрачено 60% от имеющегося ресурса памяти - т.е. это нормально, глваное, чтобы утечки не произошло. Так что ли :)?

Алексей777

  • Пользователь
  • **
  • Сообщений: 10
  • ФИО: Пермяков Алексей Алексеевич
Если это правильный ответ, то он очень странный.

Jarinat

  • Новичок
  • *
  • Сообщений: 8
  • ФИО: Ринат
Я понимаю данный вопрос в следующем ключе: за 1 клиент серверный вызов затрачивается определенный объем памяти. В параметрах рабочего сервера есть свойство - безопасный расход памяти за один вызов. Т.е. мы уже понимаем, что у нас есть некий показатель, который может ограничить наш клиент-серверный вызов. Т.е. какой объем памяти будет являться критическим для нас, а какой нет за 1 клиент серверный вызов.
Вы же предлагаете оценивать критерием: были ли полностью очищены виртуальные ячейки памяти, после того как клиент-серверный вызов закончил свою работу. И в чем же тут оценка? Будем ставить оценки как в школе: 5, если нет утечки памяти, а 2 если есть :)?

Т.е. если за один клиент серверный вызов у нас было затрачено 60% от имеющегося ресурса памяти - т.е. это нормально, глваное, чтобы утечки не произошло. Так что ли :)?
CALL события регистрируются всегда, поэтому и не рекомендуется их включать надолго. Если мы расследуем утечку, то для нас критичны большие значения Memory. Если же мы говорим о затратах памяти на один серверный вызов, то MemoryPeack.

Алексей777

  • Пользователь
  • **
  • Сообщений: 10
  • ФИО: Пермяков Алексей Алексеевич
Для утечки у нас существует Leak -  с англ. так и переводится - течь ...

Т.е. это точно правильный ответ :)? Морозов А. с этим согласиться :)?

Алексей777

  • Пользователь
  • **
  • Сообщений: 10
  • ФИО: Пермяков Алексей Алексеевич
Я хотел сказать, на Александре такой ответ проверен? Он его принимает как правильный :)?

Jarinat

  • Новичок
  • *
  • Сообщений: 8
  • ФИО: Ринат
Я хотел сказать, на Александре такой ответ проверен? Он его принимает как правильный :)?
Я сам поеду сдавать только 28.03. Если будет такой вопрос, то проверю.

Алексей777

  • Пользователь
  • **
  • Сообщений: 10
  • ФИО: Пермяков Алексей Алексеевич
Думаю ответ неверный. Оценить затраты памяти за 1 клиент-серверный вызов это означает понять, что за данный вызов расходуется не критичный для сервера 1С объем опер. памяти. Тем самым мы должны приблизится к пониманию какое значение требуется установить у свойства безопасный расход памяти за один вызов (БРП). У Морозова есть статья на http://kb.1c.ru/articleView.jsp?id=79. В статье, в вкратце: "" "Допустимый объем памяти" = 12 ГБ - 2 Гб (объем, занимаемый процессами системы) - 3 Гб * 1 rphost (объем всех процессов rphost) = 7 Гб. Т.е. процесс rphost в худшем сценарии может вырасти до 7 Гб.""

Смысл, надеюсь, понятен. Базируясь на логике статьи, я могу предположить: кол-во соединений на 1 рабочий процесс в 8.3 мы знаем (Соединений), допустимый объем памяти мы посчитали (ОбъемПамяти), значит можем ОбъемПамяти/Соединений * Коэффициент = БРП, где коэффициент может, например, равняться 1,2. И вот здесь мы можем использовать уже события тех.журнала, чтобы посчитать, а сколько у нас расходуется по факту памяти за 1 клиент серверный вызов и сравнить полученный факт с показателем "Допустимый объем памяти" - тем самым мы можем дать оценку.

А вот оценивать по течет или не течет я считаю неверно. Но если Морозов считает, что верно, то я его тогда не понимаю.
 

Алексей777

  • Пользователь
  • **
  • Сообщений: 10
  • ФИО: Пермяков Алексей Алексеевич
Коллеги, может есть ещё мнения? Действительно, хочется получить точно верный ответ, если ответ MemoryPeack, то специалисты, у которых уже за плечами сертификат, подтвердите, пожалуйста данный ответ и объясните в чем, тогда я ошибаюсь. До 28 числа остаются считанные дни. Может на мисте топик открыть?

Jarinat

  • Новичок
  • *
  • Сообщений: 8
  • ФИО: Ринат
Думаю ответ неверный. Оценить затраты памяти за 1 клиент-серверный вызов это означает понять, что за данный вызов расходуется не критичный для сервера 1С объем опер. памяти. Тем самым мы должны приблизится к пониманию какое значение требуется установить у свойства безопасный расход памяти за один вызов (БРП). У Морозова есть статья на http://kb.1c.ru/articleView.jsp?id=79. В статье, в вкратце: "" "Допустимый объем памяти" = 12 ГБ - 2 Гб (объем, занимаемый процессами системы) - 3 Гб * 1 rphost (объем всех процессов rphost) = 7 Гб. Т.е. процесс rphost в худшем сценарии может вырасти до 7 Гб.""

Смысл, надеюсь, понятен. Базируясь на логике статьи, я могу предположить: кол-во соединений на 1 рабочий процесс в 8.3 мы знаем (Соединений), допустимый объем памяти мы посчитали (ОбъемПамяти), значит можем ОбъемПамяти/Соединений * Коэффициент = БРП, где коэффициент может, например, равняться 1,2. И вот здесь мы можем использовать уже события тех.журнала, чтобы посчитать, а сколько у нас расходуется по факту памяти за 1 клиент серверный вызов и сравнить полученный факт с показателем "Допустимый объем памяти" - тем самым мы можем дать оценку.

А вот оценивать по течет или не течет я считаю неверно. Но если Морозов считает, что верно, то я его тогда не понимаю.
Вопрос был изначально такой: Как оценить затраты памяти за один клиент серверный вызов. На него есть ответ CALL + MemoryPeak (если найдете другой способ - сообщите).
Если мы говорим про Безопасный расход памяти, то это настройка для каждого рабочего сервера в 8.3 в консоли кластера. Устанавливается в байтах. Если ставим 0, то значение объема определяется автоматически, как 5% Максимального объема памяти рабочих процессов на данном рабочем сервере (тоже настройка рабочего сервера).

alex15650

  • Пользователь
  • **
  • Сообщений: 13
У кого за плечами сертификат тот уже тут не сидит  :)
Ждем тогда 28 числа и результата, я только в апреле поеду  ;D

Самый клевый куфср по подготовке к аттестации по платформе 1С:Предприятие 8