Qu'est-ce que SAP R / 3?
SAP R / 3 est une architecture à 3 niveaux composée de 3 couches
- Présentation
- Application
- Base de données
En termes simples, c'est une architecture client-serveur.
- R signifie système en temps réel
- 3 représente - une architecture à 3 niveaux.
PC de l'utilisateur: - Les utilisateurs peuvent accéder au système SAP de deux manières: -
- Via SAP GUI
- Via un navigateur Web
Cela s'appelle front-end. Seul le frontal est installé sur le PC de l'utilisateur et non sur les serveurs d'application / de base de données.
Front-end transmet les demandes de l'utilisateur au serveur de base de données et aux serveurs d'applications.
Serveurs d'applications: - Le serveur d'applications est conçu pour traiter la logique métier. Cette charge de travail est répartie entre plusieurs serveurs d'applications. Avec plusieurs serveurs d'applications, l'utilisateur peut obtenir la sortie plus rapidement.
Le serveur d'applications existe à un emplacement distant par rapport à l'emplacement du PC utilisateur.
Serveur de base de données: - Le serveur de base de données stocke et récupère les données selon les requêtes SQL générées par les applications ABAP et Java.
La base de données et l'application peuvent exister sur le même emplacement physique ou sur un emplacement physique différent.
Comprendre les différentes couches SAP
Couche de présentation :
La couche de présentation contient les composants logiciels qui composent SAPgui (interface utilisateur graphique). Cette couche est l'interface entre le système R / 3 et ses utilisateurs. Le système R / 3 utilise SAPgui pour fournir une interface utilisateur graphique intuitive pour la saisie et l'affichage des données.
La couche de présentation envoie l'entrée de l'utilisateur au serveur d'applications et reçoit des données à afficher. Lorsqu'un composant SAPgui est en cours d'exécution, il reste lié à la session de terminal d'un utilisateur dans le système R / 3.
Couche d'application:
La couche application se compose d'un ou de plusieurs serveurs d'applications et d'un serveur de messages. Chaque serveur d'applications contient un ensemble de services utilisés pour exécuter le système R / 3. Théoriquement, vous n'avez besoin que d'un seul serveur d'applications pour exécuter un système R / 3. En pratique, les services sont répartis sur plusieurs serveurs d'applications. Le serveur de messagerie est responsable de la communication entre les serveurs d'applications. Il transmet les demandes d'un serveur d'applications à un autre au sein du système. Il contient également des informations sur les groupes de serveurs d'applications et leur équilibrage de charge actuel. Il utilise ces informations pour attribuer un serveur approprié lorsqu'un utilisateur se connecte au système.
Couche de base de données:
La couche de base de données consiste en un système de base de données central contenant toutes les données du système R / 3. Le système de base de données comprend deux composants: le système de gestion de base de données (SGBD) et la base de données elle-même. SAP a fabriqué sa propre base de données nommée Hana mais est compatible avec toutes les principales bases de données telles que Oracle. Toutes les données R / 3 sont stockées dans la base de données. Par exemple, la base de données contient les données de contrôle et de personnalisation qui déterminent le fonctionnement de votre système R / 3. Il contient également le code de programme de vos applications. Les applications se composent de code de programme, de définitions d'écran, de menus, de modules de fonction et de divers autres composants. Ceux-ci sont stockés dans une section spéciale de la base de données appelée le référentiel R / 3, et sont par conséquent appelés objets du référentiel. Référentiel R / 3, les objets sont utilisés dans ABAP workbench.
Comprendre les composants de l'architecture à 3 niveaux SAP R / 3: -
Architecture système ABAP + Java
- Serveur de messages: il gère la communication entre les répartiteurs distribués dans le système ABAP .
- File d'attente du répartiteur: divers types de processus de travail sont stockés dans cette file d'attente.
- Dispatcher: il distribue les demandes aux processus de travail.
- Passerelle: elle permet la communication entre le système SAP et entre le système SAP et les systèmes externes .
- Processus ABAP-Work: - Il exécute séparément les étapes de dialogue dans les applications R / 3 Les types de processus de travail sont indiqués ci-dessous: -
- Memory-pipes: il permet la communication entre les processus de travail ICM et ABAP.
- Serveur de messages: Il gère les répartiteurs java et les processus de serveur.Il permet la communication dans l'environnement d'exécution Java.
- Enqueue Server: il gère les verrous logiques définis par le programme d'application Java exécuté dans un processus serveur.
- Services centraux: le cluster Java nécessite une instance spéciale des services centraux pour la gestion des verrous et la transmission des messages et des données. Le cluster Java est un ensemble de processus qui travaillent ensemble pour créer un système fiable. L'instance est un groupe de ressources telles que la mémoire, les processus de travail, etc.
- Répartiteur Java: il reçoit les demandes du client et les transmet au processus serveur .
- SDM: Software Deployment Manager est utilisé pour installer les composants J2EE.
- Processus du serveur Java: il peut traiter un grand nombre de demandes simultanément.
- Threading: plusieurs processus s'exécutent séparément en arrière-plan, ce concept est appelé threading.
- ICM: Il permet la communication entre le système SAP et le protocole HTTP, HTTPS, SMTP. Cela signifie qu'en entrant l'URL du système dans le navigateur, vous pouvez également accéder à SAP à partir du navigateur.
Un autre composant est JCO. JCO est utilisé pour gérer la communication entre le répartiteur Java et le répartiteur ABAP lorsque le système est configuré comme ABAP + Java.
Comment fonctionne le processus de connexion SAP?
Étape 1) Une fois qu'un utilisateur clique sur le système SAP à partir de l'interface graphique, la demande de l'utilisateur est transmise à Dispatcher. Étape 2) La demande est d'abord stockée dans les files d'attente de demandes. Dispatcher suit la règle du premier entré, premier sorti . Il trouvera un processus de travail gratuit et s'il est disponible, il sera attribué.
Étape 3) Selon la demande de l'utilisateur, un processus de travail particulier est attribué à l'utilisateur. Par exemple, lorsque l'utilisateur se connecte au système, le processus de travail Dialog est attribué à l'utilisateur. Si l'utilisateur exécute un rapport en arrière-plan, le processus de travail en arrière-plan est affecté à l'utilisateur.Lorsque certaines modifications sont effectuées au niveau de la base de données, le processus de travail de mise à jour est affecté.Ainsi, le processus de travail d'action de l'utilisateur est affecté.
Étape 4)Une fois que l'utilisateur reçoit le processus de travail de dialogue, puis les autorisations utilisateur, les paramètres actuels de l'utilisateur sont intégrés au processus de travail dans la mémoire partagée pour accéder aux données de l'utilisateur.Une fois que l'étape de dialogue est exécutée, les données de l'utilisateur sont déployées à partir du processus de travail. Ainsi, la mémoire partagée sera nettoyée et les données des autres utilisateurs pourront être enregistrées dans la zone de mémoire partagée. L'étape de dialogue signifie les mouvements de l'écran. Dans une transaction, lorsqu'un utilisateur passe d'un écran à l'autre, le processus s'appelle une étape de dialogue.
Étape 5)Le premier processus de travail trouvera les données dans le tampon. S'il trouve des données dans la mémoire tampon, il n'est pas nécessaire de récupérer les données de la base de données. Ainsi, le temps de réponse est amélioré et ce processus est appelé hit.S'il ne trouve pas les données dans le tampon, il trouvera les données dans la base de données et ce processus est appelé miss. Le taux de réussite doit toujours être supérieur au taux de raté. Il améliore les performances du système.
Étape 6) Les autres données demandées sont interrogées à partir de la base de données et une fois le processus terminé, le résultat est renvoyé à l' interface graphique via le répartiteur.
Étape 7) Lorsque les données de l'utilisateur final sont supprimées de la mémoire partagée, la mémoire sera donc disponible pour les autres utilisateurs. Ce processus est appelé déploiement.