Книга знаний

1С:Предприятие / v8 / Администрирование / Производительность

v8: Способы повышения производительности 1С 80

Подборка способов повышения производительности 1С 80Автор статьи: Гений 1С | Редакторы: Damned,
Последняя редакция №5 от 19.07.06 | История
URL: http://kb.mista.ru/article.php?id=229

Ключевые слова: производительность


Ускорение работы с коллекциями значений



По возможности используйте вместо списков значений и структур соответствия - это единственная индексированная коллекция в 1С.

Для операций свертки и сортировки таблицы значений выгоднее использовать построитель запросов, чем встроенные методы Свернуть, Сортировать: Книга знаний: v8: Ускорение типовой свертки таблиц значений в 1С80

Допишите сюда другие известные вам способы ускорения производительности.

Совместная работа большого количества пользователей



Для терминального режима имеет смысл попробовать способ избавления от 100% загрузки процессора при блокировках: Книга знаний: Исправление ошибки 1С:Предприятие 7.7/8.0 - 100% загрузка процессора при ожидании блокировки

Вынесение кода проведения документа на сервер

Самый первый способ


Для этого весь код проведения документа нужно вынести на сервер.
Модуль документа:
Процедура ОбработкаПроведения()
    ПровестиДокументNNNНаСервере(Ссылка, Отказ); 
КонецПроцедуры

Общий модуль с флажком только "Сервер":
Функция ПровестиДокументNNNНаСервере(Ссылка, Отказ) 
...
КонецФункции

Более деликатный способ


Проведение из документа переносится на сервер.
Естественно, нужно в случае трезвенки передать мутабельное значение объекта на сервер.
Модуль документа:
Процедура ОбработкаПроведения(Отказ, РежимПроведения) Экспорт 
#Если Клиент Тогда 

    ПровестиНаСервере(обМутабельноеЗакодировать(ЭтотОбъект), РежимПроведения, Отказ);
    Возврат;
#КонецЕсли

//Далее исходный код обработки проведения, выполняться будет только на сервере
...
КонецПроцедуры


Общий модуль только с галкой "Сервер":
Процедура ПровестиНаСервере(Объект, РежимПроведения, Отказ)
    обМутабельноеРаскодировать(Объект).ОбработкаПроведения(Отказ, РежимПроведения);
КонецПроцедуры


Способы передачи мутабельного значения объекта на сервер здесь: Книга знаний: v8: Сериализация объекта в строку через XML

Метод вынесения проведения на сервер тестировался на примере конфигурации УПП, документа ПеремещениеТоваров.
До вынесения документ проводился 14 секунд (работа кода - 3.5 сек, запись движений - 8.5 сек).
После вынесения - 4.5 секунд (работа кода - 2.5 сек, запись движений - 2 сек).

Описание | Рубрикатор | Поиск | ТелепатБот | Захваченные статьи | Установки | Форум
© Станислав Митичкин (Волшебник), 2005-2025 | Mista.ru

Яндекс.Метрика