Учебники

4) Изучение архитектуры сока

Что такое SAP R / 3?

SAP R / 3 — это трехуровневая архитектура, состоящая из трех уровней

  1. презентация
  2. заявка
  3. База данных

Проще говоря, это архитектура клиент-сервер.

  • R означает систему реального времени
  • 3 представляет — 3-х уровневая архитектура.

Руководство по архитектуре Sap R / 3

ПК пользователя: —   пользователи могут получить доступ к системе SAP двумя способами: —

  1. Через SAP GUI
  2. Через веб-браузер

Это называется front-end. На ПК пользователя устанавливается только внешний интерфейс, а не серверы приложений / баз данных.

Front-end принимает пользовательские запросы к серверу баз данных и серверам приложений.

Серверы приложений: —   Сервер приложений построен для обработки бизнес-логики. Эта рабочая нагрузка распределяется между несколькими серверами приложений. С несколькими серверами приложений пользователь может быстрее получить результат.

Сервер приложений существует в удаленном местоположении по сравнению с местоположением пользовательского ПК.

Сервер базы данных: — Сервер базы данных хранит и извлекает данные в соответствии с запросами SQL, генерируемыми приложениями ABAP и Java .

База данных и приложение могут существовать в одном или другом физическом месте.
 

Понимание различных слоев SAP

Руководство по архитектуре Sap R / 3

Уровень представления :

Уровень представления  содержит программные компоненты, составляющие 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: —

Руководство по архитектуре Sap R / 3

ABAP + системная архитектура Java

  1. Сервер сообщений: он управляет связью между распределенными диспетчерами в системе ABAP .
  2.  Очередь диспетчера:  в этой очереди хранятся различные типы рабочих процессов.
  3. Диспетчер:  Распределяет запросы по рабочим процессам.
  4. Шлюз: обеспечивает связь между системой SAP, а также между системой SAP и внешними системами .
  5. Процессы ABAP-Work: —  Он отдельно выполняет шаги диалога в приложениях R / 3.

    Типы рабочих процессов приведены ниже:

    Руководство по архитектуре Sap R / 3

  6. Каналы памяти:  он обеспечивает связь между рабочими процессами ICM и ABAP.
  7. Сервер сообщений:  он обрабатывает диспетчеры Java и процессы сервера. Он обеспечивает связь в среде выполнения Java.
  8. Сервер постановки в очередь: он обрабатывает логические блокировки, которые устанавливаются исполняемой прикладной программой Java в процессе сервера.
  9. Центральные службы. Для кластера Java требуется специальный экземпляр центральных служб для управления блокировками и передачи сообщений и данных. Кластер Java — это набор процессов, которые работают вместе для создания надежной системы. Экземпляр — это группа ресурсов, таких как память, рабочие процессы и так далее.
  10. Диспетчер Java:  он получает клиентские запросы и перенаправляет их на серверный процесс .
  11. SDM:  Диспетчер развертывания программного обеспечения используется для установки компонентов J2EE.
  12. Процессы сервера Java:  он может обрабатывать большое количество запросов одновременно.
  13. Потоки:  несколько процессов выполняется отдельно в фоновом режиме, эта концепция называется потоками.
  14. ICM:  обеспечивает связь между системой SAP и протоколом HTTP, HTTPS, SMTP. Это означает, что, введя системный URL в браузере, вы также можете получить доступ к SAP из браузера.

Еще один компонент — JCO. JCO используется для обработки связи между диспетчером Java и диспетчером ABAP, когда система настроена как ABAP + Java.

Как работает процесс входа в систему SAP?

Руководство по архитектуре Sap R / 3

Шаг 1)  Как только пользователь нажимает на систему SAP из графического интерфейса пользователя, запрос пользователя направляется  диспетчеру.
Шаг 2)  Сначала запрос сохраняется в  очереди запросов.  Диспетчер следует правилу « первым пришел — первым вышел» . Он найдет бесплатный рабочий процесс и при наличии будет назначен.

Шаг 3)  По запросу пользователя конкретный рабочий процесс назначается пользователю. Например, при входе пользователя в систему пользователю назначается рабочий процесс Dialog. Если пользователь запускает отчет в фоновом режиме, то пользователю назначается фоновый рабочий процесс. Когда некоторые изменения выполняются на уровне базы данных, тогда назначается рабочий процесс обновления. Так что в соответствии с действием пользователя назначается рабочий процесс.

Шаг 4) Как только пользователю назначен диалоговый рабочий процесс, затем пользовательские полномочия, текущие настройки пользователя, переходят к рабочему процессу в общей памяти для доступа к данным пользователя. Как только выполняется шаг диалога, пользовательские данные выкатываются из рабочего процесса. Таким образом, совместно используемая память будет очищена, и данные других пользователей могут быть сохранены в области совместно используемой памяти. Шаг диалога означает движение экрана. В транзакции, когда пользователь переходит с одного экрана на другой, этот процесс называется шагом диалога.

Шаг 5) Первый рабочий процесс найдет данные в буфере. Если он находит данные в буфере, тогда нет необходимости извлекать данные из базы данных. Таким образом, время отклика улучшается, и этот процесс называется попаданием. Если он не находит данные в буфере, он находит данные в базе данных и этот процесс называется пропуском. Коэффициент попадания должен быть всегда выше, чем коэффициент попадания. Это улучшает производительность системы.

Шаг 6)  Другие запрашиваемые данные запрашиваются из базы данных, и после завершения процесса результат отправляется обратно в  графический интерфейс через диспетчера.

Шаг 7)  В конце данные пользователя удаляются из общей памяти, чтобы память была доступна другим пользователям. Этот процесс называется  развертыванием.