AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 10.02.2022, 14:10   #21  
Masel is offline
Masel
Участник
 
39 / 537 (18) +++++++
Регистрация: 19.09.2007
Цитата:
Сообщение от Logger Посмотреть сообщение
А где отключали?
На аосе?
На клиенте?
Отключал на аосе. В bin папке аоса в конф. файле меняется <gcServer enabled="false" />.
На клиенте я даже не знаю, есть ли такая настройка, ни разу не проверял. Но с клиентом проще. Там обычно все в один поток и пользователь может переоткрыть клиент, пока жалоб на клиент не поступало. Все тяжелые операции обычно на сервере.
Эта настройка уже несколько лет работает в продуктиве на всех аосах, и клиентских и пакетниках. Я за это время особо негативных побочных эффектов не увидел, хотя лучше наверное включать только если реально диагностируется проблема.

Я когда когда эту проблему исследовал, то наиграл воспроизводимый пример. В этом примере в таблицу InventParameters было добавлено несколько тяжелых полей и были частые обращения InventParameters::find() в джобе. Есть определенная граница в размере таблицы, после которой все начинает жутко тупить. Я предположил, что как то плохо собирается мусор от больших курсоров. Но возможно это не единственный триггер, и четких критериев нет.

Уже после того как я этот параметр нашел мне удалось этот пример отправить в майкрософт и мне в итоге прислали рекомендацию как раз этот параметр и использовать.

Сам параметр позиционируется как опция для тестовых сред для экономии памяти, но имеет большое влияние на работу нагруженных пакетников.
За это сообщение автора поблагодарили: sukhanchik (10).
Старый 10.02.2022, 16:11   #22  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,952 / 3230 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от Masel Посмотреть сообщение
На клиенте я даже не знаю, есть ли такая настройка, ни разу не проверял.
Есть (Потому я и спросил. Из описания не понял, ваши проблемы только в пакетах наблюдались или и в клиентском коде тоже. Ну теперь разъяснили)

см.
Ax32.exe.config

Но там параметр не выставлен. Т.е. используется по умолчанию.
Старый 10.02.2022, 18:49   #23  
vmoskalenko is offline
vmoskalenko
Участник
Аватар для vmoskalenko
 
145 / 334 (12) ++++++
Регистрация: 25.01.2007
Адрес: Toronto
Цитата:
Сообщение от Masel Посмотреть сообщение
Я когда когда эту проблему исследовал, то наиграл воспроизводимый пример. В этом примере в таблицу InventParameters было добавлено несколько тяжелых полей и были частые обращения InventParameters::find() в джобе. Есть определенная граница в размере таблицы, после которой все начинает жутко тупить. Я предположил, что как то плохо собирается мусор от больших курсоров. Но возможно это не единственный триггер, и четких критериев нет.
Проверьте какой уровень кеширования выставлен в таблице InventParameters

Если установлено Entire Table то вся таблица всасывается в локальную память. Проблема в том что той памяти выделяется аж 128Кбайт (если память не изменяет).
В Dynamics Perf есть отдельный query на эту тему.
Старый 10.02.2022, 20:15   #24  
Masel is offline
Masel
Участник
 
39 / 537 (18) +++++++
Регистрация: 19.09.2007
Цитата:
Сообщение от vmoskalenko Посмотреть сообщение
Проверьте какой уровень кеширования выставлен в таблице InventParameters

Если установлено Entire Table то вся таблица всасывается в локальную память. Проблема в том что той памяти выделяется аж 128Кбайт (если память не изменяет).
В Dynamics Perf есть отдельный query на эту тему.
Не, это вообще не влияло, я тоже об этом подумал. Я пробовал вообще отключать кеширование на таблице. Просто создается курсор InventParameters и система не может от него освободить память быстро, не понятно почему.
Конкретно с этой таблицей я разделил ее на две. Тяжелые кастомные поля убрал в отдельную таблицу. Но всю систему так не проверишь и главное нет четких критериев, поэтому параметр все таки лучшее решение в реальной жизни, если столкнулись с таким.

Последний раз редактировалось Masel; 10.02.2022 в 20:19.
За это сообщение автора поблагодарили: vmoskalenko (6).
Теги
garbage collector, gcserver, сборка мусора

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: Documentation collection: Inplace upgrade MS Dynamcis AX 2012 RTM --> AX 2012 R2 CU7 Blog bot DAX Blogs 0 22.06.2014 01:19
axsa: MDM Adapter - Extending Dynamics AX 2012 R3 Master Data Management Blog bot DAX Blogs 0 22.05.2014 03:28
DAX: Official Dynamics AX 2012 R2 Content (update) - Where is it, and how can you find out about updates? Blog bot DAX Blogs 0 03.12.2012 11:11
Dynamics AX Sustained Engineering: Servicing of Dynamics AX 2012 and Dynamics AX 2012 Feature Pack Blog bot DAX Blogs 0 08.05.2012 23:12
dynamics-ax: Interview with Microsoft's Lachlan Cash on his new role, AX 2012 and more Blog bot DAX Blogs 6 22.04.2011 14:55

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 23:09.