Что такое SAP R / 3?
SAP R / 3 — это трехуровневая архитектура, состоящая из трех уровней
- презентация
- заявка
- База данных
Проще говоря, это архитектура клиент-сервер.
- R означает систему реального времени
- 3 представляет — 3-х уровневая архитектура.
ПК пользователя: — пользователи могут получить доступ к системе SAP двумя способами: —
- Через SAP GUI
- Через веб-браузер
Это называется front-end. На ПК пользователя устанавливается только внешний интерфейс, а не серверы приложений / баз данных.
Front-end принимает пользовательские запросы к серверу баз данных и серверам приложений.
Серверы приложений: — Сервер приложений построен для обработки бизнес-логики. Эта рабочая нагрузка распределяется между несколькими серверами приложений. С несколькими серверами приложений пользователь может быстрее получить результат.
Сервер приложений существует в удаленном местоположении по сравнению с местоположением пользовательского ПК.
Сервер базы данных: — Сервер базы данных хранит и извлекает данные в соответствии с запросами SQL, генерируемыми приложениями ABAP и Java .
База данных и приложение могут существовать в одном или другом физическом месте.
Понимание различных слоев SAP
Уровень представления :
Уровень представления содержит программные компоненты, составляющие SAPgui (графический интерфейс пользователя). Этот уровень является интерфейсом между Системой R / 3 и ее пользователями. Система R / 3 использует SAPgui для предоставления интуитивно понятного графического интерфейса пользователя для ввода и отображения данных.
Уровень представления отправляет входные данные пользователя на сервер приложений и получает от него данные для отображения. Пока компонент SAPgui работает, он остается связанным с сеансом терминала пользователя в системе R / 3.
Уровень приложений:
Уровень приложений состоит из одного или нескольких серверов приложений и сервера сообщений. Каждый сервер приложений содержит набор служб, используемых для запуска системы R / 3. Теоретически, вам нужен только один сервер приложений для запуска системы R / 3. На практике службы распределены по нескольким серверам приложений. Сервер сообщений отвечает за связь между серверами приложений. Он передает запросы от одного сервера приложений на другой в системе. Он также содержит информацию о группах серверов приложений и текущей балансировке нагрузки в них. Он использует эту информацию для назначения соответствующего сервера, когда пользователь входит в систему.
Уровень базы данных:
Уровень базы данных состоит из центральной базы данных, содержащей все данные в системе R / 3. Система баз данных состоит из двух компонентов — системы управления базами данных (СУБД) и самой базы данных. SAP создала собственную базу данных под названием Hanaно совместим со всеми основными базами данных, такими как Oracle. Все данные R / 3 хранятся в базе данных. Например, база данных содержит данные управления и настройки, которые определяют работу вашей системы R / 3. Он также содержит программный код для ваших приложений. Приложения состоят из программного кода, экранных определений, меню, функциональных модулей и различных других компонентов. Они хранятся в специальном разделе базы данных, который называется Репозиторий R / 3, и соответственно называются объектами репозитория. Репозиторий R / 3, объекты используются в рабочей среде ABAP.
Понимание компонентов 3-уровневой архитектуры SAP R / 3: —
ABAP + системная архитектура Java
- Сервер сообщений: он управляет связью между распределенными диспетчерами в системе ABAP .
- Очередь диспетчера: в этой очереди хранятся различные типы рабочих процессов.
-
Диспетчер: Распределяет запросы по рабочим процессам.
-
Шлюз: обеспечивает связь между системой SAP, а также между системой SAP и внешними системами .
-
Процессы ABAP-Work: — Он отдельно выполняет шаги диалога в приложениях R / 3.
Типы рабочих процессов приведены ниже:
-
Каналы памяти: он обеспечивает связь между рабочими процессами ICM и ABAP.
-
Сервер сообщений: он обрабатывает диспетчеры Java и процессы сервера. Он обеспечивает связь в среде выполнения Java.
-
Сервер постановки в очередь: он обрабатывает логические блокировки, которые устанавливаются исполняемой прикладной программой Java в процессе сервера.
-
Центральные службы. Для кластера Java требуется специальный экземпляр центральных служб для управления блокировками и передачи сообщений и данных. Кластер Java — это набор процессов, которые работают вместе для создания надежной системы. Экземпляр — это группа ресурсов, таких как память, рабочие процессы и так далее.
-
Диспетчер Java: он получает клиентские запросы и перенаправляет их на серверный процесс .
-
SDM: Диспетчер развертывания программного обеспечения используется для установки компонентов J2EE.
-
Процессы сервера Java: он может обрабатывать большое количество запросов одновременно.
-
Потоки: несколько процессов выполняется отдельно в фоновом режиме, эта концепция называется потоками.
-
ICM: обеспечивает связь между системой SAP и протоколом HTTP, HTTPS, SMTP. Это означает, что, введя системный URL в браузере, вы также можете получить доступ к SAP из браузера.
Еще один компонент — JCO. JCO используется для обработки связи между диспетчером Java и диспетчером ABAP, когда система настроена как ABAP + Java.
Как работает процесс входа в систему SAP?
Шаг 1) Как только пользователь нажимает на систему SAP из графического интерфейса пользователя, запрос пользователя направляется диспетчеру.
Шаг 2) Сначала запрос сохраняется в очереди запросов. Диспетчер следует правилу « первым пришел — первым вышел» . Он найдет бесплатный рабочий процесс и при наличии будет назначен.
Шаг 3) По запросу пользователя конкретный рабочий процесс назначается пользователю. Например, при входе пользователя в систему пользователю назначается рабочий процесс Dialog. Если пользователь запускает отчет в фоновом режиме, то пользователю назначается фоновый рабочий процесс. Когда некоторые изменения выполняются на уровне базы данных, тогда назначается рабочий процесс обновления. Так что в соответствии с действием пользователя назначается рабочий процесс.
Шаг 4) Как только пользователю назначен диалоговый рабочий процесс, затем пользовательские полномочия, текущие настройки пользователя, переходят к рабочему процессу в общей памяти для доступа к данным пользователя. Как только выполняется шаг диалога, пользовательские данные выкатываются из рабочего процесса. Таким образом, совместно используемая память будет очищена, и данные других пользователей могут быть сохранены в области совместно используемой памяти. Шаг диалога означает движение экрана. В транзакции, когда пользователь переходит с одного экрана на другой, этот процесс называется шагом диалога.
Шаг 5) Первый рабочий процесс найдет данные в буфере. Если он находит данные в буфере, тогда нет необходимости извлекать данные из базы данных. Таким образом, время отклика улучшается, и этот процесс называется попаданием. Если он не находит данные в буфере, он находит данные в базе данных и этот процесс называется пропуском. Коэффициент попадания должен быть всегда выше, чем коэффициент попадания. Это улучшает производительность системы.
Шаг 6) Другие запрашиваемые данные запрашиваются из базы данных, и после завершения процесса результат отправляется обратно в графический интерфейс через диспетчера.
Шаг 7) В конце данные пользователя удаляются из общей памяти, чтобы память была доступна другим пользователям. Этот процесс называется развертыванием.