Куда помещает данные метод ПоместитьВоВременное Хранилище()?

Это один из часто задаваемых вопросов на экзамене «1С: Эксперт по технологическим вопросам».

Подробно о методе написано на ИТС («Анализ причин роста сеансовых данных» и «Помещение данных во временное хранилище»).

Попробуем рассмотреть кратко, что такое хранилище сеансовых данных.

Хранилище сеансовых данных — каталог на сервере «1С:Предприятие», которому установлено требование назначения функциональности «Сервис сеансовых данных». Если требования функциональности нет, то сеансовые данные распределяются по всем рабочим серверам.

Расположение каталога сеансовых данных можно определить по ключу «/d» в командной строке запуска службы сервера.

Обычно это файлы C:\Program Files (x86)\1cv8\srvinfo\reg_номерпорта\snccntx[guid]\snccntx*.dat .

Сеансовые данные образуются не только методами «ПоместитьВоВременноеХранилище», «ПоместитьФайл», «НачатьПомещениеФайла», но и в результате работы формы: после ввода значений в поля ввода, при последующих серверных вызовах, данные сбрасываются в хранилище сеансовых данных.

Хранилище сеансовых данных параллельно существует и в памяти операционной системы. С помощью технологии mapping данные файлов snccntx*.dat частично, в необходимом размере, отображаются в оперативную память.

Сеансовые данные постепенно устаревают — при закрытии формы, сеанса пользователя или при следующем серверном вызове. Это зависит от способа помещения данных в хранилище сеансовых данных.

Неактуальные сеансовых данные периодически очищаются сборщиком мусора. Если помещаемые данные содержат циклические ссылки, то автоматической очистки может не произойти.

Объём создаваемых сеансовых данных можно определить с помощью анализа технологического журнала. Для этого требуется включить сбор событий CALL, SCALL и CONN со следующими настройками:

При этом свойство InBytes события CALL будет показывать сеансовые данные в байтах.

Поделиться