Изменения в сравнении с версией 2.0.7:
Алгоритмы:
- Увеличена скорость обрабконфигурацииотплатформаки зависимых объектов на 15-25%, в ряде случаев до 50%;
- Полностью переписан весь код;
- Код проверен программу 1С с помощью АПК 1.2 (исправлено 350+ замечаний и не соответсвий стандартам 1С, осталось 9 :));
- Работа с графом "неограниченного" размера;
- Приоритезирована раздачи задан обрабконфигурацииотплатформакиий потокам;
- Реализована возможность в событиях (не во всех) дополнять "Параметры для объекта" - см. Руководство.
- Теперь поток, а не менеджер контролирует количество попыток обрабконфигурацииотплатформаать объект;
- События потоков теперь выполняются в "Попытка-Исключение" - позволяет избежать лишних перезапусков потоков;
- Модуль "мпОсновнаяПрограмма" - изменил идентификатор на: "мпОсновнаяПрограммаВызовСервера";
- Процедуры и функции уменьшены в размерах, для сокращения контекста (средний размер 17 строк; минимум 3 строки, максимум 73 строки);
- Все алгоритмы разнесен по областям;
- Шаблон модуля событий разработплатформачика теперь выделен в отдельный модуль: "мпСобытияРазработплатформачикаШаблон";
Исключено:
- механизм мониторинга (появится в след. релизах);
- механизм "безпотокового" выполнения.
- возможность написать весь код в модуле объекта обрабконфигурацииотплатформаки (противоречит работплатформае в безопасном режиме).
Транспорт:
- Обмен данными теперь происходит пакетами;
События:
- Изменены:
Изменен состав параметров всех событий (требуется корректировка событий разработплатформачика). - см. Руководство.
Имена:
- ПриПолученииРесурсов -> ПриРасчетеРесурсов
- ПриОбработплатформакеДействияПотока -> ПриОбработплатформакеПотоком
- ПриОбработплатформакеОтвета -> ПриОбработплатформакеРезультата
- ПриОбработплатформакеМассиваОбработплатформаанныхФагментовКоллекции -> ПриСборкеФрагментовКоллекции
- Добавлены:
- ПриПроизвольнойОбработплатформакеГрафа - см. Руководство.
- ПриСохран внешние компонентыенииГрафа - см. Руководство.
- Исключены:
- ПриДобавленииВОчередьОбработплатформаки - теперь "Менеджер потоков" сам добавляет объект, если есть ресурсы, так же есть параметр "УчитыватьОбъектыБезРесурсов" - см. Руководство;
- ПриОбработплатформакеДополненногоФагментаКоллекции - теперь и обрабконфигурацииотплатформаку, и дополнение можно осуществить через метод "Обработплатформаать коллекцию";
- ПриПолученииМестаХраненияФайловМониторинга - т.к. исключены механизмы мониторинга, данное событие утратило свою силу;
Параметры "Менеджера потоков":
- Изменены:
- Структура хран внешние компонентыения параметров (полная структура параметров предоставлена в общем макете "мпПолнаяСтруктураПараметров")
- Имена:
- КоличествоЭлементовКолекцииНаПоток -> КоличествоЭлементовКолекцииНаОбъект
- РазрезМенеджера -> ИдентификаторМенеджера
- Добавлены:
- Общие.КоличествоОбъектовВПакете;
- Разработплатформачик.Общие;
- Разработплатформачик.ПоСобытиям;
- ОбработплатформаатьКоллекцию.СобратьКоллекциюИзФрагментов;
- ОбработплатформаатьКоллекцию.КоличествоЭлементовКоллекцииНаОбъект;
- ПолучитьГраф_Gephi.Каталог;
- Граф.ОграничениеРазмера;
- Граф.УчитыватьОбъектыБезРесурсов;
- Исключены:
- ДинамическийРассчетКоличестваПотоков -> Данный параметр больше не нужен, см. Руководство (параметр "КоличествоЭлементовКолекцииНаОбъект")
- КоэффициентКратностиОчередиПотоковКПотокам -> теперь "Менеджер потоков" работплатформаает с полным графом;
- ВестиМониторингМенеджераПотоков, т.к. механизм мониторинга исключен;
- ВестиМониторингПорядкаОбработплатформакиОбъектов, т.к. механизм мониторинга исключен;
- ВестиМониторингОчередиНаОбработплатформаку, т.к. механизм мониторинга исключен;
Прочие изменения:
- добавлены методы и свойства формировтехничскоеания файлов для программ анализа графов;
- обрабконфигурацииотплатформаки демонстрирующие возможности "Менеджера потоков" реализованы более наглядно и обособленно друг от друга;
- Восстановление партий УПП (https://infostart.ru/public/1119110/) так же поддерживает версию 2.1.0
- 01.06.2020
- Исправлена проблема с автосборкой "ТаблицЗначений"
Все, что было в первой версии, переработплатформаано, улучшено и дополнено. В связи с чем она (первая версия) переходит в разряд статьи с основными объяснениями и картинками.
Сразу договоримся, если в тексте будет указано «v1» - это отсылка к реализации в первой версии, если «v2.х» - к текущей.
Очень кратко, о чем речь…
Фреймворк в виде одного общего модуля, позволяющего при получении объектов на обрабконфигурацииотплатформаку запускать их в несколько потоков. Особенности:
- Нет необходимости рассчитывать «порции» для обрабконфигурацииотплатформаки;
- Нет необходимости организовывать файловый обмен между потоками;
- Возможность запускать несколько менеджеров потоков одновременно, при этом потоки одного менеджера, могут запускать новые менеджеры со своими задачами и потоками;
- Можно выстраивать граф зависимости объектов, что позволяет, например, избегать взаимоблокировок и/или организовать восстановление партий (на нашем предприятии удалось добиться 10х+ ускорения при 10 потоках в рабочее время – 200+ активных пользователей - Результаты работплатформаы механизма);
- Все необходимые "вмешательство" в алгоритмы происходят с помощью событий;
- Возможность описывать алгоритмы событий, как в модуле менеджера, так и в любом другом модуле БД (предпочтительно), а также во внешней обрабконфигурацииотплатформаке.
- Автоматический рестарт потока в случае ошибок;
- Контроль за количеством рестартов по каждому объекту;
- Возможность получать «ответы» от потоков;
- Возможность контролировать работплатформау с помощью «Инструментов разработплатформачика» или иных отчетов;
- Возможность срочного прерывания работплатформаы;
- И многое другое…
так было в «v1»
- Увеличена скорость обрабконфигурацииотплатформаки зависимых объектов на 15-25%, в ряде случаев до 50% по сравнению с версией "v2.0";
- Полностью переписан весь код;
- Код проверен программу 1С с помощью АПК 1.2 (исправлено 350+ замечаний и не соответсвий стандартам 1С, осталось 9 :));
- Работа с графом "неограниченного" размера;
- Объекты для обрабконфигурацииотплатформаки теперь передаются пакетами, а не по одному;
- Приоритезирована раздача задан обрабконфигурацииотплатформакиий потокам;
- Реализована возможность в событиях (не во всех) дополнять "Параметры для объекта" для передачи в другие события - см. Руководство.
- Теперь поток, а не менеджер контролирует количество попыток обрабконфигурацииотплатформаать объект;
- События потоков теперь выполняются в "Попытка-Исключение" - позволяет избежать лишних перезапусков потоков;
- Добавлены методы для формировтехничскоеания файлов с данными для построения и анализа графов;
- ПолучитьГраф_Gephi();
- ПроизвольнаяОбработплатформакаГрафа().
ВАЖНО!!!
Изменен состав и имена событий, а так же переименованы некоторые экспортные методы, в связи с чем, Ваши «события разработплатформачика» реализованные на прошлых версиях «менеджера потоков» потребуют изменений, но незначительные.
Для примера, корректировка событий разработплатформачика для «Восстановления партий» заняла примерно 10-15 мин с учетом анализа (80%) и написанием кода(20%).
Разработплатформака проводилось на 1С:Предприятие 8.3 (8.3.9.1850) 32x; Режим совместимости 8.2.15
Теперь обо всем по порядку в деталях и с картинками...
Условия поставок:
Скриншоты
00 Лого.PNG

01_1 Архитектура-проблемы.png

01_2 Архитектура-решения.png

06_8 Ресурсы.png
7 поставки.PNG

01 Методы и события.png

02_1 ОбработатьОбъект.png

02_2 ОбработатьОбъект Ошибка при обработке.png

02_3 ОбработатьОбъект Передача частных параметров.png

02_4 ОбработатьОбъект Файлы графа Gephi.png

02_5 ОбработатьОбъект Файлы графа произвольная программа.png

02_6 Обработка коллекции Простая.png

02_7 Обработка коллекции Автосборка.png

02_8 Обработка коллекции Автосборка и передача общих параметров.png

02_9 Обработка коллекции Произвольная сборка.png

02_10 Обработка коллекции Произвольная сборка с выводом.png