Имя инстанции содержит имя системы SAP R/3 и буквы, соответствующие службам. Центральная система SAP R/3 только с одной инстанцией, обеспечивающей все службы, будет иметь имя <SID>_DVEBMSG<номер инстанции>_<имя хоста>, где <SID> — это имя системы из трех букв, уникальное в каждой системной инфраструктуре, а <номер инстанции> — это последние две цифры порта TCP/IP, используемого для сетевого соединения. Однако этот метод именования является только соглашением об именовании — соглашением, которое не проверяется технически. При установке сервера диалога инстанция обычно устанавливается с именем <SID>_D<номер инстанции>_<имя хоста>, даже когда она предлагает дополнительные службы. Номер инстанции может находиться между 00 и 96: номера с 97 по 99 включительно зарезервированы для специальных целей.
На уровне приложений для каждой инстанции есть один сервер сообщений. Эта служба предназначена для коммуникации между различными инстанциями системы SAP R/3. Сервер сообщений осуществляет мониторинг свободных ресурсов и их выделение в случае необходимости на уровне приложений. Инстанция, на которой работает сервер приложений, называется обычно системы SAP R/3. О задачах центральной инстанции см. ниже в данной главе. Все другие инстанции являются диалоговыми, даже если они предлагают дополнительные службы.
реализуют сервисы диалога, управления блокировками, обновления, фоновой обработки и службы вывода (спулинга). осуществляют процессы-планировщики, функционирующие на каждой инстанции. Эти процессы распознают коммуникационные требования рабочих процессов и передают их соответствующим образом. Рабочие процессы и планировщик всегда включают одну и ту же программу, запускаемую с параметрами, которые зависят от каждой функции. В соответствии с требованиями приложения и доступными ресурсами администратор должен определить, какой конкретный процесс и сколько процессов будут реализовывать сервис для каждой инстанции. Планировщик запускает эти процессы и управляет ими. В случае отказа планировщика вся инстанция перестает функционировать. Планировщик играет роль интерфейса между уровнями презентаций и приложений. Все запросы с уровня презентаций (т. е. из SAP GUI) принимаются планировщиком и присваиваются доступным в данной инстанции рабочим процессам (см. рис. 1.8).
Рис. 1.8.
Если рассмотреть структуру рабочего процесса, то можно видеть, что он реализуется путем совместного выполнения обработчика задач, процессора обработки экранов, процессора АВАР и интерфейса SQL, которые используют специальные области основной памяти. Обработчик задач координирует операции в рабочих процессах. В зависимости от выполняемой задачи обработка передается процессору экранов, процессору АВАР (он отвечает за программы на АВАР — языке программирования SAP) или интерфейсу SQL для обмена данными с БД.
Рабочие процессы различаются по своим задачам. Процессы диалога реализуют запросы активных пользовательских сеансов. Для выполнения необходимых внутренних процедур SAP R/3 каждая инстанция SAP R/3 должна иметь, по крайней мере, два процесса диалога. Планировщик не назначает процесс диалога только одному пользователю (SAP GUI). На самом деле планировщик инстанции назначает выполнение каждого шага диалога свободному процессу диалога. Данные пользователя, необходимые для выполняемой обработки (например, авторизации), сохраняются в контексте пользователя в оперативной памяти (в доступных для рабочих процессов областях). В системе R/3 шаг диалога рассматривается как обработка одного экрана. Процесс диалога обычно занят только во время обработки шага диалога одного пользователя. Этот механизм позволяет процессу диалога обслуживать нескольких пользователей.
Задачи, которые необходимо осуществлять в фоновом режиме, реализуются Имеет смысл обрабатывать в фоновом режиме задачи, которые не требуют оперативного ввода данных. Можно планировать выполнение подобных заданий на конкретное время или запускать их по заданному событию. Инстанция, имеющая, по крайней мере, один подходящий рабочий процесс, должна поддерживать службу фоновой обработки.
вносит в БД изменения в асинхронном режиме. Она используется, когда изменения в данных не нужно вносить немедленно (синхронно). Пользователь системы SAP R/3 не влияет на применение службы обновления. Решение об использовании данной службы принимается на этапе разработки бизнес-приложения. Примером является ввод заказов. Каждый заказ должен вводиться быстро в диалоговом режиме (онлайн), однако фактическое обновление осуществляется в фоновом режиме с некоторой задержкой, и пользователю не нужно ждать, когда завершится транзакция. Для обработки асинхронных изменений данных в каждой инстанции системы R/3 должна быть, по крайней мере, одна служба обновления.