Версия для печати Поиск
СПб ГУП ВЦКП "Жилищное хозяйство", ООО "ЛИСС"

СПб ГУП ВЦКП "Жилищное хозяйство", ООО "ЛИСС"

Этапы оптимизации

Пакет изменений №1

Проблема:
Запросы к регистрам сведений выполнялись слишком медленно, так как регистры были спроектированы без учёта необходимости быстрого чтения данных из таблиц большого (десятки Gb) объёма по сложным условиям.

Решение:
Изменение структуры регистров привело бы к необходимости масштабных переделок практически во всех подсистемах конфигурации и могло бы отрицательно сказаться на производительности и стабильности других функций системы, поэтому было принято решение создать дополнительный регистр сведений, структура которого оптимизирована под быстрое выполнение соответствующих запросов, и дублировать в нём необходимую информацию.

Пакет изменений №2

Проблема:
Структура регистров сведений, которые используются для хранения информации о договорных отношениях, была спроектирована таким образом, что при определённых условиях алгоритму формирования платежей требовалось выполнение запроса в цикле.

Решение:
Изменение структуры регистров привело бы к необходимости масштабных переделок практически во всех подсистемах конфигурации и могло бы отрицательно сказаться на производительности и стабильности других функций системы, поэтому было принято решение создать дополнительный регистр сведений, структура которого оптимизирована под однократное выполнение соответствующего запроса, и дублировать в нём необходимую информацию.

Пакет изменений №3

Пакет изменений не был внедрен в рабочую систему, т.к. тестирование показало низкий эффект от предлагаемых изменений.

Пакет изменений №4

Проблема:
Поведение системы было устроено таким образом, что один и тот же «тяжёлый» пакет запросов выполнялся дважды. Вначале пакет запросов выполнялся в клиентской сессии, результат использовался для формирования управляющей таблицы, при помощи которой пользователь выполняет тонкую настройку операции. Затем этот же пакет запросов повторно выполнялся в фоновом задании, которое отвечает за непосредственное создание документов.

Решение:
Оптимизация заключалась в следующем: сохранять результаты пакета запросов, полученные при первом выполнении пакета, в информационной базе, в виде набора сериализованных таблиц значений. Таким образом, фоновым заданиям не требуется повторное выполнение пакета запросов, в них передаётся уже готовый результат. После выполнения операции временные данные удаляются из информационной базы.