Обработка HTTP-запросов в системе ABAP - PullRequest
0 голосов
/ 11 сентября 2018

У меня очень простой вопрос о том, как обрабатывается внешний HTTP-запрос в ABAP (система S / 4).

Запросы обрабатываются для каждого процесса или для каждого потока. (условия, взятые больше из мира Java Java).

Под потоками будет подразумеваться, у которых уже есть объекты, инициализированные в памяти предыдущим запросом.

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

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

С наилучшими пожеланиями,

Saurav

1 Ответ

0 голосов
/ 12 сентября 2018

Internet Communication Manager (ICM) обрабатывает запрос и передает его вашему классу, который расширяется из интерфейса IF_HTTP_EXTENSION по URL (настройте его в SICF).

SAP требуется авторизация для принятия HTTP-запроса. Экран входа в систему устанавливает cookie для клиента для его отслеживания. Если вы настраиваете статическую учетную запись пользователя для своего сервиса по t-коду SICF, вы можете добавить куки-файлы к клиенту (с заголовком http в ответе) для отслеживания и проверки.

В этом интерфейсе нет кэша для объекта, но вы можете создать свой собственный с помощью статических атрибутов класса и других общих функций кэширования функций из ABAP. Пожалуйста, проверьте ниже API службы остальных для образца проекта: https://github.com/pacroy/abap-rest-api

Балансировщики нагрузки имеют возможности маршрутизации на основе файлов cookie (на основе сеансов) для поиска правильной системы.

...