Тормозит УАТ 1.0? Простое решение, как ускорить

21.02.19

База данных - HighLoad оптимизация

Если тормозит УАТ 1.0, Вам сюда.

Скачать файлы

Наименование Файл Версия Размер
Тормозит УАТ 1.0 ? Простое решение как ускорить.:
.cf 17,10Kb
1
.cf 17,10Kb 1 Скачать

При работе с УАТ 1.0, особенно при большом объёме данных, можно столкнуться с тормозами при работе интерфейса и проведении некоторых расчётов.

Для примера возьмём форму списка справочника Транспортные средства и посмотрим на замеры производительности.

Как видим, 182 раза выполнялся запрос, что заняло 51% времени, и это только при открытии формы списка справочника Транспортные средства, тут явно что-то не то.

Запрос находится в функции уатПраваИНастройки.уатПолучитьПраваИНастройкиПользователя, запрос содержит соединение РегистрСведений.уатПраваИНастройки с ПланВидовХарактеристик.уатПраваИНастройки четыре раза.

Вопрос зачем городить такой запрос и зачем он выполняется 182 раза только при открытии формы списка справочника Транспортные средства, мы оставим разработчикам. Кстати вызов данной функции встречается 420 раз в конфигурации

Нам надо как-то решить вопрос с производительностью. Будем кешировать права и настройки, для этого будем использовать глобальную переменную глКЭШПраваИНастройкиУАТ в Модуль обычного и управляемого приложения.

В функцию уатПолучитьПраваИНастройкиПользователя ещё один параметр ИспользоватьКЭШ = Истина

И добавляем алгоритм кеширования, перед запросом.

Для корректной работы нужно так-же внести изменения в Модуль объекта обработки уатУстановкаПравИНастроек, а именно найти все вызовы уатПолучитьПраваИНастройкиПользователя и последним параметром поставить Ложь, чтобы не использовать кеширование при её работе.

После изменений при открытии формы списка справочника Транспортные средства данный запрос выполняется всего 3 раза, для заполнения кэша.
Все остальные вызовы получают данные из кэша и не дёргают базу запросами.

Замеры и скриншиты сделаны в файловой Демо базе, но ранее аналогичные изменения позволили значительно улучшить производительность в работе модуля УАТ 1.0 интегрированного в УПП с тысячей элементов в справочнике Транспортные средства. 

Тестировалось на конфигурациях:
- УАТ Проф, редакция 1.0 (1.0.14.1), платформа (8.3.12.1790)

Во вложении CF с изменениями для объединения с УАТ Проф, редакция 1.0 (1.0.14.1), если Вам лень набивать код с картинок :)

УАТ1.0 HighLoad

См. также

Оптимизация нагрузки на ЦП сервера СУБД используя типовые индексы

HighLoad оптимизация Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Анализ простого плана запроса. Оптимизация нагрузки на ЦП сервера СУБД используя типовые индексы.

13.03.2024    2347    spyke    25    

38

Анализируем SQL сервер глазами 1С-ника

HighLoad оптимизация Инструменты администратора БД Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Обработка для простого и удобного анализа настроек, нагрузки и проблем с SQL сервером с упором на использование оного для 1С. Анализ текущих зааросов на sql, ожиданий, конвертация запроса в 1с и рекомендации где может тормозить

1 стартмани

15.02.2024    7349    149    ZAOSTG    66    

95

Удаление строк из таблицы значений различными способами с замером производительности

HighLoad оптимизация Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Встал вопрос: как быстро удалить строки из ТЗ? Рассмотрел пять вариантов реализации этой задачи. Сравнил их друг с другом на разных объёмах данных с разным процентом удаляемых строк. Также сравнил с выгрузкой с отбором по структуре.

09.01.2024    5760    doom2good    48    

63

Опыт оптимизации 1С на PostgreSQL

HighLoad оптимизация Бесплатно (free)

При переводе типовой конфигурации 1C ERP/УТ/КА на PostgreSQL придется вложить ресурсы в доработку и оптимизацию запросов. Расскажем, на что обратить внимание при потерях производительности и какие инструменты/подходы помогут расследовать проблемы после перехода.

20.11.2023    8577    ivanov660    6    

75

ТОП проблем/задач у владельцев КОРП лицензий 1С на основе опыта РКЛ

HighLoad оптимизация Бесплатно (free)

Казалось бы, КОРП-системы должны быть устойчивы, быстры и надёжны. Но, работая в рамках РКЛ, мы видим немного другую картину. Об основных болевых точках КОРП-систем и подходах к их решению пойдет речь в статье.

15.11.2023    4999    a.doroshkevich    20    

72

Начните уже использовать хранилище запросов

HighLoad оптимизация Запросы

Очень немногие из тех, кто занимается поддержкой MS SQL, работают с хранилищем запросов. А ведь хранилище запросов – это очень удобный, мощный и, главное, бесплатный инструмент, позволяющий быстро найти и локализовать проблему производительности и потребления ресурсов запросами. В статье расскажем о том, как использовать хранилище запросов в MS SQL и какие плюсы и минусы у него есть.

11.10.2023    15954    skovpin_sa    14    

97

Как эффективно настроить autovacuum в Postgres для 1С

HighLoad оптимизация Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

Кто не любит убирать мусор? Думаю, практически все, а вот в Postgres это обязательный ритуал для эффективной работы. Как эффективно настроить уборку за 1С в Postgres, можно прочитать в этой статье и еще раз задуматься о бесплатности Postgres.

05.08.2023    4971    1CUnlimited    5    

51
Вознаграждение за ответ
Показать полностью
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. KroVladS 34 21.02.19 17:27 Сейчас в теме
УАТ Проф редакция 1.0 не самая свежая конфа, но её до сих пор активно используют поэтому считаю что будет полезно.
user1180581; +1 Ответить
2. maddy 19 22.02.19 10:23 Сейчас в теме
Если кешировать пообъектно можно просто поставить "Повторное использование возвращаемых значений" "На время сеанса"
3. KroVladS 34 22.02.19 11:23 Сейчас в теме
(2)
Повторное использование возвращаемых значений" "На время сеанса"

В УАТ 2 работа этой функции именно так и реализована, функция вынесена в отдельный модуль уатПраваИНастройкиПовтИсп
На момент первоначальной реализации я увидел проблему и посчитал что сделать свой кэш проще.
4. zabaluev 461 22.02.19 16:31 Сейчас в теме
Позор разработчикам, элементарную оптимизацию не сделали.
Оставьте свое сообщение