Axapta: Библиотека: Кэш объектов в трехуровневой Аксапте http://top100.rambler.ru/top100/
[[http://www.mazzy.ru/ | ]] [[mailto:mazzy@mazzy.ru | ]] [[http://www.mazzy.ru/map.html | ]] [[http://www.mazzy.ru/search.html | ]] [[http://www.mazzy.ru/subscribe.html | ]] [[http://www.rabota-na-rezultat.ru/]] ·[[http://axapta.mazzy.ru/]] ·[[http://navision.mazzy.ru/]] ·[[http://forum.mazzy.ru/]] ·[[http://www.mazzy.ru/]] [[../ | ]]
См. также:
* [[../runaos/]] * [[../mssqlsetup2/]]
Обсудить на форуме:
* [[http://forum.mazzy.ru/index.php?showtopic=260]]
Совет Александра Левыкина о том, как управлять кэшированием объектов в трехуровневой Аксапте и снизить нагрузку на канал.
При первоначальном запуске клиента и использовании любой функциональности, клиент загружает к себе в память необходимые объекты AOD. При последующем обращении к уже используемой ранее функциональности, клиент использует уже загруженные в память объекты. При выходе из программы клиента, происходит копирование данных AOD из памяти клиента в файл на диске, посмотреть на него можно в папке %UserProfile%\Local Settings\Application Data\, файл имеет расширение *.aoc и именуется согласно правилу ax_AOS_Instancename@Hostname_username.aoc.
При повторном запуске клиента, данные из файла *.aoc загружаются в оперативную память, и не требуют загрузки с AOS.
Существует возможность использовать заранее заготовленный файл с кэшируемыми данными AOD. Для этого необходимо выполнить следующую последовательность действий:
1. Загрузите 3-х уровневого клиента, используя широкий канал связи, локальную сеть или непосредственно на AOS.
1. Произведите все стандартные действия необходимые клиенту, для того что бы загрузить в память все необходимые объекты AOD. 1. Выйдите из программы, при этом будет создан файл с кэшируемыми данными. 1. Переименуйте получившийся файл кэша ax_AOS_Instancename@Hostname_username.aocв файл с наименованием master.aoc 1. Переместите файл master.aocна машину клиента в папку %UserProfile%\Local Settings\Application Data\ 1. Запустите клиента.
К чему это приведет.
Клиент при запуске прочитает данные из файла master.aoc, тем самым избавит клиента от загрузки необходимых для работы объектов AOD. Это снизит первоначальный сетевой трафик и позволит пользователю сразу приступить к работе. При выходе из программы создастся новый файл с именем в формате ax_AOS_Instancename@Hostname_username.aoc, он будет содержать данные из master.aoc. При дальнейших запусках файл master.aocуже не требуется, все кэшируемые данные уже будут хранится в ax_AOS_Instancename@Hostname_username.aoc.
А теперь самое неприятное, все это замечательно работает на Axapta до v.3.0. А начиная с этой версии с кэшем на клиенте происходит что то не понятное, из файла master.aoc читается только малая часть содержимого, практически не влияющая на первоначальную загрузку.
=== Добавлено 17.06.2004 ===
#|||
А теперь самое неприятное, все это замечательно работает на Axapta до v.3.0. А начиная с этой версии с кэшем на клиенте происходит что то не понятное, из файла master.aoc читается только малая часть содержимого, практически не влияющая на первоначальную загрузку.
Это не совсем так, просто в 3-й аксапте файл master.aoc надо помещать в каталог %HOME_AXAPTA_CLIENT%\log и тогда он берется без проблем.
Кроме того столкнулся с такой проблемой: В Аксапта 3.0 SP3 CIS под тонким клиентом в определенный момент AOS выкидывал критическую ошибку и закрывал аксапту. Решил проблему тем, что создал на клиенте файл master.aoc по описанному выше способу в каталоге %HOME_AXAPTA_CLIENT%\log ||