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