Что такое SAP R / 3?
SAP R / 3 - это трехуровневая архитектура, состоящая из трех уровней.
- Презентация
- Заявление
- База данных
Проще говоря, это архитектура клиент-сервер.
- R означает систему реального времени
- 3 представляет - 3-х уровневая архитектура.
ПК пользователя: - Пользователи могут получить доступ к системе SAP двумя способами: -
- Через SAP GUI
- Через веб-браузер
Это называется 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.
Понимание компонентов трехуровневой архитектуры SAP R / 3:
Архитектура системы ABAP + Java
- Сервер сообщений: он управляет обменом данными между распределенными диспетчерами в системе ABAP .
- Очередь диспетчера: в этой очереди хранятся различные типы рабочих процессов.
- Диспетчер: распределяет запросы по рабочим процессам.
- Шлюз: он обеспечивает связь между системой SAP, а также между системой SAP и внешними системами .
- ABAP-Рабочие процессы: - Он отдельно выполняет шаги диалога в приложениях R / 3. Типы рабочих процессов приведены ниже: -
- Каналы памяти: они обеспечивают связь между рабочими процессами ICM и ABAP.
- Сервер сообщений: он обрабатывает диспетчеры java и серверные процессы. Он обеспечивает связь в среде выполнения java.
- Сервер постановки в очередь: он обрабатывает логические блокировки, которые устанавливаются исполняемой прикладной программой Java в серверном процессе.
- Центральные службы: кластеру Java требуется специальный экземпляр центральных служб для управления блокировками и передачи сообщений и данных. Кластер Java - это набор процессов, которые работают вместе, чтобы построить надежную систему. Экземпляр - это группа ресурсов, таких как память, рабочие процессы и так далее.
- Диспетчер Java: он принимает клиентские запросы и пересылает их серверному процессу .
- SDM: Software Deployment Manager используется для установки компонентов 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) В конце данные пользователя удаляются из общей памяти, чтобы память была доступна другим пользователям. Этот процесс называется развертыванием.