Распараллеливание вычислений в ABAP

Вы здесь:
← Все статьи

Распараллеливание вычислений в ABAP (не Cloud, в Cloud есть своё отдельное API) выполняется либо через aRFC (pRFC) модули, либо через фоновые задания. Подробное описание первого сценария можно почитать тут. Чтобы каждый раз не дублировать код с обработкой стандартных функций, можно воспользоваться простым фреймворком для распараллеливания.

Демо программа (https://github.com/MikeSidorochkin/ABAP-Simple-Async-Framework/blob/main/zbc_async_demo.prog.abap):

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

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

Если не передавать процент и максимальное число процессов, программа автоматически выделит безопасное с точки зрения нагрузки на систему число ресурсов.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *