|
28.02.2012, 13:16 | #1 |
Участник
|
ax2009: сервер постоянно что-то делает. почему?
ax2009. ситуация проявляется постоянно. давно хотел разобраться, да руки не доходили.
Если посмотреть на список процессов в Task Manager, то сервер ax2009 постоянно что-то делает и сбрасывает/забирает страницы памяти. Причем много. Даже когда я с ax2009 ничего не делаю. ax4.0, ax2012 так себя не ведут (если их не используют, то и не свопятся) Пакетных заданий нет (никаких нет). Пакетный сервер включен. ax2009 сервер - 64бит. Вопрос: у кого-нибудь проявляется такое? что это может быть? стоит ли беспокоится? как избавиться от постоянного дерганья страниц? |
|
28.02.2012, 14:11 | #2 |
Участник
|
А почему такой вопрос ?
Это мешает чем-то или просто стремление к совершенству ? Может к аосу кто-то обращается по сети ? |
|
28.02.2012, 14:15 | #3 |
Участник
|
Цитата:
неаккуратненько как-то (С) анекдот. нет, никто не обращается. просмотрено при помощи утилиты tcpview мало того, это мой ноутбук. и аксапта-сервер явно заблокирован в стандартном виндовом фаерволе. хотелось бы понять. |
|
28.02.2012, 14:13 | #4 |
Участник
|
Попробуйте вообще снять галку, что аос является пакетным сервером. У вас она взведена на скриншоте. Мож помогет.
|
|
28.02.2012, 14:22 | #5 |
Участник
|
Цитата:
что-то слишком высокая цена за отсуствие свопа. кроме того, я отключал. не помогает. щас попробовал еще раз, аос перезагрузил - картина та же самая. давайте определимся для начала: у кого-нибудь подобное встречается во время полного бездействия АОСа? |
|
28.02.2012, 14:26 | #6 |
Moderator
|
Даже когда батч-серверу нечего делать, он время от времени вызывает метод batchRun.servergetNextTask(), который отслеживает зависимости между batch task и переводит задачи в статус ready, например. (Да и вообще много он там чего делает). А в контексте AOS (вероятно отдельно от batch server) есть некая инфраструктура, которая от имени сессии с id==0 гоняет класс SysEventHandler, который, по идее, должен обеспечивать пересылку событий между серверами в классе. Уверен что это не полный список
|
|
28.02.2012, 14:39 | #7 |
Участник
|
Цитата:
Сообщение от fed
Даже когда батч-серверу нечего делать, он время от времени вызывает метод batchRun.servergetNextTask(), который отслеживает зависимости между batch task и переводит задачи в статус ready, например. (Да и вообще много он там чего делает). А в контексте AOS (вероятно отдельно от batch server) есть некая инфраструктура, которая от имени сессии с id==0 гоняет класс SysEventHandler, который, по идее, должен обеспечивать пересылку событий между серверами в классе. Уверен что это не полный список
но зачем страницы то при этом дергать? да еще так много. свободной памяти на ноутбуке полно. кроме того, своп продолжается даже при отключенном пакетном сервере. понять бы, что это? понять бы, у остальных так же постоянно идет Page Fault? |
|
28.02.2012, 14:57 | #8 |
Участник
|
Так страницы в своп сбрасывает не AOS, а операционка
Попробуй установить для NETWORK SERVICES право блокировать страницы в памяти
__________________
Axapta v.3.0 sp5 kr2 |
|
|
За это сообщение автора поблагодарили: mazzy (2). |
28.02.2012, 14:59 | #9 |
Участник
|
Цитата:
а как это сделать? в принципе, подозревал, что проблема в аккаунте. но пытался рыть в сторону прав на каталоге. |
|
28.02.2012, 15:32 | #10 |
Ищущий знания...
|
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с) С Уважением, Елизаров Артем |
|
|
За это сообщение автора поблагодарили: mazzy (2). |
28.02.2012, 16:43 | #11 |
Участник
|
|
|
28.02.2012, 17:54 | #12 |
Участник
|
Цитата:
Цитата:
Сообщение от fed
Вероятно, AndyD пишет вот про это вот: How to: Enable the Lock Pages in Memory Option (Windows)
Да, niksen прав, у меня 64битный ноутбук, AMD Phenome II N950 Quad-Core попробовал одну из двух служб запускать не под Network Service, а под своим логином. Тоже не помогает. Вот до включения блокировки страниц. А вот после включения блокировки для Network Service и после перезугрузки |
|
28.02.2012, 15:25 | #13 |
Moderator
|
Вероятно, AndyD пишет вот про это вот: How to: Enable the Lock Pages in Memory Option (Windows)
Правда вот здесь вот пишут что приложение само должно поддерживать работу с заблокированной памятью. То есть - наличие этой привилегии просто позволяет пользователю вызывать специальную функцию, которая позволяет аллокировать страницы из non-paged memory. Не факт что AOS это умеет. В общем - если будешь экспериментировать - поделись результатами Последний раз редактировалось fed; 28.02.2012 в 15:32. |
|
|
За это сообщение автора поблагодарили: mazzy (2). |
28.02.2012, 15:47 | #14 |
----------------
|
можно еще обмен с БД посмотреть
никакой BC не пытается работать втихоря? |
|
28.02.2012, 18:20 | #15 |
Участник
|
угу. раз в секунду выполняется один и тот же набор запросов
Код: declare @p2 int set @p2=180150625 declare @p3 int set @p3=16 declare @p4 int set @p4=1 declare @p5 int set @p5=-1 exec sp_cursorexecute 1073741858,@p2 output,@p3 output,@p4 output,@p5 output,7,N'EntireTableCache',N'',1,N'',N'' select @p2, @p3, @p4, @p5 ==================== exec sp_cursorfetch 180150625,2,1,1 ==================== exec sp_cursor 180150625,40,1 ==================== exec sp_cursorclose 180150625 ==================== exec sp_execute 35,0x07FD308200000001009957C50623EA6400610074000000502370011B033008FE4D6400610074000000430070011B03530823EA6400610074000000000070011B03540823EA6400610074000000000070011B03560823EA6400610074000000000070011B038D0945096400610074000000010070011B03A70958006400610074000000000070011B03FF,811137825,N'',7,N'EntireTableCache',N'',1,N'',224459205 |
|
|
За это сообщение автора поблагодарили: gl00mie (2). |
28.02.2012, 16:20 | #16 |
----------------
|
наблюдаю ту же картину
причем, число PF Delta стабильно то есть постоянно происходят Page Faults в большом количестве... ничему жизнь не учит эти АОСы |
|
28.02.2012, 18:49 | #17 |
Moderator
|
Это он у тебя SysLastValue перечитывает. Там есть запись с именем EntireTableCache. В записи хранится что-то типа битовой маски обновленных таблиц с EntireTableCache. Если один сервер обновляет одну из таких таблиц, то он обновляет эту запись, сигнализируя что остальные сервера обязаны соответствующую таблицу перечитать. Возможно - у тебя в 4ке и в 2012ой нету дополнительных серверов в конфигурации (пусть даже мертвых и несуществующих), а в 2009ой - есть. Попробуй их выкосить из SysServerConfig и BatchServerConfig и проверь чего будет после рестарта.
|
|
|
За это сообщение автора поблагодарили: Logger (5), gl00mie (2). |
28.02.2012, 18:53 | #18 |
Участник
|
Спасибо
Цитата:
еще предложения? |
|
28.02.2012, 19:27 | #19 |
Участник
|
Цитата:
Сообщение от fed
Это он у тебя SysLastValue перечитывает. Там есть запись с именем EntireTableCache. В записи хранится что-то типа битовой маски обновленных таблиц с EntireTableCache. Если один сервер обновляет одну из таких таблиц, то он обновляет эту запись, сигнализируя что остальные сервера обязаны соответствующую таблицу перечитать.
заодно посмотрел какое количество записей содержится в этих таблицах. хм... есть WorkCalendarDateLine, содержит 20128 записей. выключил эту таблицу. ничего не изменилось, даже наоборот PF Delta увеличилась |
|
25.05.2016, 02:36 | #20 |
Участник
|
Цитата:
Сообщение от fed
Это он у тебя SysLastValue перечитывает. Там есть запись с именем EntireTableCache. В записи хранится что-то типа битовой маски обновленных таблиц с EntireTableCache. Если один сервер обновляет одну из таких таблиц, то он обновляет эту запись, сигнализируя что остальные сервера обязаны соответствующую таблицу перечитать.
Я попробовал расковырять - не получается. Видно только что он представляет из себя некую периодическую структуру, в которой несколько раз повторяется весь перечень компаний в базе. Выцепить tableId-ы не получилось. |
|
|
За это сообщение автора поблагодарили: fed (0). |
Теги |
aos, ax2009, cachesynctime, entiretablecache, syslastvalue, производительность |
|
|