Co to jest SAP R / 3?
SAP R / 3 to trójwarstwowa architektura składająca się z 3 warstw
- Prezentacja
- Podanie
- Baza danych
Krótko mówiąc, jest to architektura typu klient-serwer.
- R oznacza system czasu rzeczywistego
- 3 reprezentuje - architekturę trójwarstwową.
Komputer użytkownika: - Użytkownicy mogą uzyskać dostęp do systemu SAP na dwa sposoby: -
- Poprzez GUI SAP
- Za pośrednictwem przeglądarki internetowej
Nazywa się front-end. Tylko front-end jest instalowany na komputerze użytkownika, a nie na serwerach aplikacji / baz danych.
Front-end przenosi żądania użytkownika do serwera bazy danych i serwerów aplikacji.
Serwery aplikacji: - Serwer aplikacji jest zbudowany w celu przetwarzania logiki biznesowej. To obciążenie jest rozłożone na wiele serwerów aplikacji. Dzięki wielu serwerom aplikacji użytkownik może szybciej uzyskać dane wyjściowe.
Serwer aplikacji istnieje w lokalizacji zdalnej w porównaniu z lokalizacją komputera użytkownika.
Serwer bazy danych: - Serwer bazy danych przechowuje i pobiera dane zgodnie z zapytaniami SQL generowanymi przez aplikacje ABAP i Java.
Baza danych i aplikacja mogą istnieć w tej samej lub innej lokalizacji fizycznej.
Zrozumienie różnych warstw SAP
Warstwa prezentacji :
Warstwa prezentacji zawiera komponenty oprogramowania, które tworzą SAPgui (graficzny interfejs użytkownika). Ta warstwa jest interfejsem pomiędzy systemem R / 3 a jego użytkownikami. System R / 3 wykorzystuje SAPgui do zapewnienia intuicyjnego graficznego interfejsu użytkownika do wprowadzania i wyświetlania danych.
Warstwa prezentacji wysyła dane wejściowe użytkownika do serwera aplikacji i odbiera z niego dane do wyświetlenia. Gdy komponent SAPgui jest uruchomiony, pozostaje połączony z sesją terminala użytkownika w systemie R / 3.
Warstwa aplikacji:
Warstwa aplikacji składa się z co najmniej jednego serwera aplikacji i serwera komunikatów. Każdy serwer aplikacji zawiera zestaw usług używanych do uruchamiania systemu R / 3. Teoretycznie do uruchomienia systemu R / 3 potrzebny jest tylko jeden serwer aplikacji. W praktyce usługi są rozproszone na więcej niż jednym serwerze aplikacji. Serwer komunikatów jest odpowiedzialny za komunikację między serwerami aplikacji. Przekazuje żądania z jednego serwera aplikacji do drugiego w systemie. Zawiera również informacje o grupach serwerów aplikacji i ich aktualnym równoważeniu obciążenia. Wykorzystuje te informacje do przypisania odpowiedniego serwera, gdy użytkownik loguje się do systemu.
Warstwa bazy danych:
Warstwa bazy danych składa się z centralnego systemu bazodanowego zawierającego wszystkie dane w systemie R / 3. System bazy danych składa się z dwóch komponentów - systemu zarządzania bazą danych (DBMS) oraz samej bazy danych. SAP wyprodukował własną bazę danych o nazwie Hana, ale jest kompatybilna ze wszystkimi głównymi bazami danych, takimi jak Oracle.Wszystkie dane R / 3 są przechowywane w bazie danych. Na przykład baza danych zawiera dane sterujące i dostosowujące, które określają sposób działania systemu R / 3. Zawiera również kod programu dla twoich aplikacji. Aplikacje składają się z kodu programu, definicji ekranów, menu, modułów funkcyjnych i różnych innych komponentów. Są one przechowywane w specjalnej sekcji bazy danych zwanej repozytorium R / 3 i są odpowiednio nazywane obiektami repozytorium. Repozytorium R / 3, obiekty są używane w środowisku roboczym ABAP.
Zrozumienie składników trójwarstwowej architektury SAP R / 3: -
ABAP + Java System Architecture
- Serwer wiadomości: obsługuje komunikację między rozproszonymi dyspozytorami w systemie ABAP .
- Kolejka dyspozytorska: W tej kolejce przechowywane są różne typy procesów roboczych.
- Dyspozytor: rozdziela żądania do procesów roboczych.
- Brama: Umożliwia komunikację między systemem SAP oraz między systemem SAP a systemami zewnętrznymi .
- Procesy ABAP-Work: - Oddzielnie wykonuje kroki dialogowe w aplikacjach R / 3 Typy procesów roboczych podano poniżej: -
- Potoki pamięci: umożliwia komunikację między procesami pracy ICM i ABAP.
- Message Server: obsługuje dyspozytorów java i procesy serwera, umożliwia komunikację w środowisku wykonawczym java.
- Serwer Enqueue: obsługuje blokady logiczne, które są ustawiane przez wykonywaną aplikację Java w procesie serwera.
- Usługi centralne: klaster Java wymaga specjalnej instancji usług centralnych do zarządzania blokadami oraz przesyłania wiadomości i danych. Klaster Java to zestaw procesów, które współpracują ze sobą, aby zbudować niezawodny system. Instancja to grupa zasobów, takich jak pamięć, procesy robocze i tak dalej.
- Java Dispatcher: odbiera żądania klientów i przekazuje je do procesu serwera .
- SDM: Menedżer wdrażania oprogramowania służy do instalowania komponentów J2EE.
- Procesy serwera Java: może jednocześnie przetwarzać dużą liczbę żądań.
- Wątkowanie: wiele procesów jest wykonywanych oddzielnie w tle, koncepcja ta nazywa się wątkowością.
- ICM: Umożliwia komunikację pomiędzy systemem SAP a protokołem HTTP, HTTPS, SMTP. Oznacza to, że wpisując adres URL systemu w przeglądarce można również uzyskać dostęp do SAP z poziomu przeglądarki.
Jeszcze jeden element to JCO. JCO służy do obsługi komunikacji między dyspozytorem Java a dyspozytorem ABAP, gdy system jest skonfigurowany jako ABAP + Java.
Jak działa proces logowania SAP?
Krok 1) Po kliknięciu przez użytkownika systemu SAP w interfejsie GUI żądanie użytkownika jest przekazywane do dyspozytora. Krok 2) Żądanie jest najpierw przechowywane w kolejkach żądań. Dyspozytor kieruje się zasadą „ pierwsze weszło pierwsze wyszło” . Znajdzie wolny proces pracy i jeśli będzie dostępny, zostanie przydzielony.
Krok 3) Zgodnie z żądaniem użytkownika określony proces pracy jest przypisany do użytkownika. Na przykład, gdy użytkownik loguje się do systemu, wówczas proces pracy Dialog jest przypisywany do użytkownika. Jeśli użytkownik uruchamia raport w tle, to proces pracy w tle jest przypisywany do użytkownika, a gdy pewne modyfikacje są dokonywane na poziomie bazy danych, przypisywany jest proces aktualizacji, tak jak proces roboczy akcji użytkownika jest przypisywany.
Krok 4)Po przypisaniu użytkownikowi procesu roboczego w oknie dialogowym, a następnie uprawnień użytkownika, bieżące ustawienia użytkownika są wprowadzane do procesu roboczego w pamięci współdzielonej w celu uzyskania dostępu do danych użytkownika. Po wykonaniu kroku okna dialogowego dane użytkownika są wprowadzane z procesu roboczego. W ten sposób pamięć współdzielona zostanie wyczyszczona, a dane innych użytkowników mogą zostać zapisane w obszarze pamięci współdzielonej. Krok dialogu oznacza ruchy ekranu. W transakcji, gdy użytkownik przeskakuje z jednego ekranu na drugi, proces nazywany jest krokiem dialogu.
Krok 5)W pierwszym procesie pracy dane zostaną znalezione w buforze. Jeśli znajdzie dane w buforze, nie ma potrzeby pobierania danych z bazy danych. W ten sposób poprawia się czas odpowiedzi i proces ten nazywa się trafieniem, a jeśli nie znajdzie danych w buforze, to znajdzie dane w bazie danych i proces ten nazywa się miss. Współczynnik trafień powinien być zawsze wyższy niż współczynnik chybienia. Poprawia wydajność systemu.
Krok 6) Inne żądane dane są pobierane z bazy danych i po zakończeniu procesu wynik jest wysyłany z powrotem do GUI za pośrednictwem dyspozytora.
Krok 7) Na końcu dane użytkownika są usuwane z pamięci współdzielonej, dzięki czemu pamięć będzie dostępna dla innych użytkowników. Proces ten nosi nazwę roll-out.