SAP R / 3 Architektura
⚡ Pametni sažetak
SAP R / 3 ArchiTektura je troslojni klijent-poslužitelj dizajn koji odvaja odgovornosti za prezentaciju, aplikaciju i bazu podataka. Ovaj članak objašnjava svaki sloj, ABAP i Java stog komponenti, proces prijave kojim upravlja dispečer i razlozi SAP odabrao je ovaj slojeviti model.

SAP R / 3 Architekstura podupire gotovo svaki klasik SAP Implementacija ERP-a. U donjim odjeljcima objašnjava se kako tri sloja međusobno djeluju i kako ABAP i Java Stogovi dijele posao između dispečera, poslužitelja poruka i baze podataka.
Što je SAP R/3?
SAP R/3 je klijent-poslužitelj poslovni sustav izgrađen na troslojna arhitektura koji se sastoji od tri neovisna sloja:
- Prezentacija
- primjena
- Baza podataka
- R zalaže za U stvarnom vremenu obrada.
- 3 stoji za 3-slojna arhitektonski uzorak.
Korisnikovo računalo (prednji dio): Korisnici pristupaju SAP kroz sustav SAP Grafičko korisničko sučelje ili web preglednik. Na korisnikovom računalu instaliran je samo front-end klijent; aplikacijski i poslužitelji baze podataka rade odvojeno na namjenskom hardveru.
Aplikacijski poslužitelji: Aplikacijski poslužitelji izvršavaju poslovnu logiku. Radno opterećenje je raspoređeno na više aplikacijskih poslužitelja tako da korisnici brže primaju odgovore pod velikim opterećenjem. Ovi poslužitelji obično rade na udaljenoj infrastrukturi, a ne na korisničkim radnim stanicama.
Poslužitelj baze podataka: Poslužitelj baze podataka pohranjuje i dohvaća podatke kao odgovor na SQL upite koje generira ABAP i Java aplikacije. Baza podataka i aplikacijske usluge mogu se izvoditi na istom računalu ili na odvojenim fizičkim hostovima, ovisno o potrebama kapaciteta.
Zašto je SAP R/3 koristi troslojnu arhitekturu?
Odvajanje prezentacije, poslovne logike i pohrane u tri neovisne razine daje SAP Četiri praktične prednosti R/3 u odnosu na jednoslojne ili dvoslojne dizajne:
- Neovisna skalabilnost: Svaki sloj se može skalirati zasebno. Usko grlo u poslovnoj logici rješava se dodavanjem aplikacijskih poslužitelja bez dodirivanja hardvera baze podataka.
- Raspodjela radnog opterećenja: Poslužitelj poruka uravnotežuje opterećenje dolaznih sesija između aplikacijskih poslužitelja, sprječavajući da bilo koji pojedinačni poslužitelj postane točka sukoba.
- Zaštita baze podataka: Krajnji korisnici se nikada ne povezuju izravno s bazom podataka. Sve operacije čitanja i pisanja teku kroz radne procese aplikacijskog poslužitelja, koji standardiziraju provjere autorizacije, zaključavanje i zapisivanje transakcija.
- Upgrade fleksibilnost: The SAP GUI prednji dio se može razvijati (klijenti za stolna računala, preglednike ili mobilne uređaje putem SAPUI5) bez promjene koda aplikacije ili baze podataka.
Ova odvojenost je također ono što omogućuje SAP za podršku višestrukim pozadinskim sustavima baza podataka - uključujući SAP HANNA, Oracle, IBM Db2 i Microsoft SQL Server — pod istom bazom koda aplikacije.
SAP R/2 protiv SAP R/3: Kako Architekstura evoluirala
SAP R/2 se izvodio na glavnom računalu i koristio dvoslojnu arhitekturu u kojoj je korisnički terminal izravno komunicirao s bazom podataka. R/3, pokrenut 1992. godine, umetnuo je namjenski aplikacijski sloj između klijenta i baze podataka. Dva su radila usporedno:
| Aspekt | SAP R / 2 | SAP R / 3 |
|---|---|---|
| Architektura | 2-slojni (glavni sustav + terminal) | 3-slojni (prezentacija + aplikacija + baza podataka) |
| Hardver | Centralizirani glavni sustav | Distribuirani Unix / Windows / Linux poslužitelji |
| skalabilnost | Samo vertikalno (veći glavni okvir) | Horizontalno (dodajte aplikacijske poslužitelje) |
| Pristup bazi podataka | Izravno iz korisničke sesije | Posredovano radnim procesima aplikacijskog poslužitelja |
| Programski model | Samo ABAP/4 | ABAP i Java uporedo |
Preostali odjeljci detaljno objašnjavaju svaki od tri R/3 sloja.
Razumijevanje različitog SAP slojevi
Slika 1: Tri SAP R/3 slojevi i promet koji teče između njih.
Sloj prezentacije
The Sloj prezentacije sadrži softverske komponente koje čine SAP GUI — grafičko sučelje R/3 sustava. To je sučelje između sustava i njegovih korisnika, koje pruža intuitivan raspored za unos i prikaz podataka.
Ovaj sloj prosljeđuje korisnički unos aplikacijskom poslužitelju i prikazuje podatke koje primi kao odgovor. Dok SAP Ako se grafičko korisničko sučelje izvodi, ono ostaje povezano s terminalnom sesijom korisnika u R/3 sustavu tijekom trajanja te sesije.
Sloj aplikacije
The Sloj aplikacije sastoji se od jednog ili više aplikacijskih poslužitelja i poslužitelj porukaSvaki aplikacijski poslužitelj pokreće skup usluga koje izvršavaju R/3 poslovnu logiku. U teoriji je dovoljan jedan aplikacijski poslužitelj; u praksi su usluge raspoređene na nekoliko poslužitelja radi kapaciteta i redundancije.
Poslužitelj poruka koordinira komunikaciju između aplikacijskih poslužitelja. Prosljeđuje zahtjeve, tracks aplikacijski poslužitelj grupira i dodjeljuje odgovarajući poslužitelj kada se korisnik prijavi na temelju trenutnog opterećenja. To omogućuje horizontalno skaliranje.
Sloj baze podataka
The Sloj baze podataka sadrži središnji sustav baze podataka koji pohranjuje sve podatke koje koristi R/3 sustav. Stog baze podataka ima dvije komponente - sustav za upravljanje bazama podataka (DBMS) i samu bazu podataka. SAP isporučuje vlastiti DBMS, SAP HANNA, a također podržava svaku glavnu komercijalnu bazu podataka (Oracle, IBM Db2, Microsoft SQL Server).
Svi R/3 podaci - prilagodba postavki, kod aplikacije, definicije zaslona, izbornici, funkcijski moduli i podaci o izvođenju - nalaze se u ovoj bazi podataka. Programski kod i dizajnerski objekti nalaze se u posebnom odjeljku koji se naziva R/3 repozitorij; ovi „objekti repozitorija“ su ono što ABAP Workbench čita, zapisuje i prenosi između sustava.
Razumijevanje sastavnih dijelova SAP R/3 3 razine Architektura
Slika 2: ABAP + Java arhitektura sustava koja prikazuje kako dva stoga dijele infrastrukturu.
Moderna SAP NetWeaver instanca može hostirati i ABAP i Java stogovi. Komponente u nastavku pokazuju kako svaki stog obrađuje vlastito slanje podataka dok dijeli pristupnik, ICM i JCO most za komunikaciju između stogova.
| Sastavni | Stog | Uloga |
|---|---|---|
| Poslužitelj poruka (ABAP) | ABAP | Koordinira komunikaciju između distribuiranih dispečera u ABAP sustav i uravnotežuje opterećenje među instancama. |
| Red čekanja za dispečera | ABAP | Buffer koji zadržava dolazne zahtjeve dok se radni proces ne oslobodi. |
| Dispečer | ABAP | Povlači zahtjeve iz reda čekanja i svaki dodjeljuje odgovarajućoj vrsti radnog procesa. |
| ABAP radni procesi | ABAP | Izvršite korake dijaloga u R/3 aplikacijama. Vrste uključuju Dijalog, Ažuriranje, Pozadina, Spol i Stavljanje u red. |
| Prolaz | Zajednička | Omogućuje komunikaciju između SAP sustava i između SAP i vanjske sustave putem RFC-a. |
| Memorijske cijevi | Zajednička | Prenosi podatke između radnih procesa Internet Communication Managera (ICM) i ABAP-a. |
| Poslužitelj poruka (Java) | Java | koordinate Java dispečeri i procesi poslužitelja; omogućuje komunikaciju unutar Java klaster vremena izvođenja. |
| Poslužitelj za stavljanje u red čekanja | Java | Upravlja logičkim bravama koje je postavio Java aplikacijski kod koji se izvršava unutar serverskog procesa. |
| Središnje usluge | Java | Posebna Java instanca klastera koja obrađuje zaključavanje i međuprocesne poruke. „Instanca“ je skupina resursa (memorija, radni procesi itd.). |
| Java Dispečer | Java | Prima zahtjeve klijenata i prosljeđuje ih Java procesi poslužitelja. |
| SDM | Java | Upravitelj implementacije softvera — instalira J2EE komponente na Java stog. |
| Java Poslužiteljski procesi | Java | Istovremeno obrađivati veliki broj zahtjeva koristeći višenitnost. |
| ICM | Zajednička | Upravitelj internetske komunikacije — omogućuje HTTP, HTTPS i SMTP promet tako da SAP može se pristupiti iz preglednika. |
| JCO | most | Java Konektor — upravlja komunikacijom između Java dispečer i ABAP dispečer kada oba stoga rade paralelno. |
Slika 3: Kategorije ABAP radnih procesa (Dijalog, Ažuriranje, Pozadina, Spool, Uvrštavanje u red).
Kako SAP Radi li proces prijave?
Slika 4: Korak-po-korak postupak prijave korisnika kroz SAP R/3 dispečerski i radno-procesni slojevi.
Korak 1) Korisnik klikne na SAP sustav iz SAP GUI; zahtjev se prosljeđuje na dispečer.
Korak 2) Zahtjev stiže u red zahtjevaDispečer slijedi prvi ušao, prvi izašao pravilo i dodjeljuje zahtjev sljedećem dostupnom radnom procesu.
Korak 3) Dodjeljuje se radni proces odgovarajuće vrste. Korisnik koji se prijavljuje prima radni proces Dialog; pozadinsko izvješće prima radni proces Background; naredba UPDATE predaje se radnom procesu Update. Radnja diktira vrstu radnog procesa.
Korak 4) Nakon što je radni proces Dialog dodijeljen, korisnikove autorizacije i trenutne postavke su uvaljano u dijeljenu memoriju kako bi radni proces mogao djelovati na korisničke podatke. Kada se završi korak dijaloga, ti su podaci odvaljano osloboditi memoriju za sljedećeg korisnika. „Dijaloški korak“ je prelazak s jednog zaslona na drugi unutar transakcije.
Korak 5) Radni proces prvo traži tražene podatke u međuspremniku. Pronalaženje tih podataka tamo naziva se pogoditi i izbjegava kružno putovanje u bazu podataka, poboljšavajući vrijeme odziva. Nepronalaženje pokreće propustiti i čitanje baze podataka. Visok omjer pogodaka i promašaja najveći je pojedinačni uzrok SAP performanse.
Korak 6) Svi preostali podaci se pretražuju iz baze podataka, a kombinirani rezultat se šalje natrag u SAP GUI putem dispečera.
Korak 7) Podaci o korisnikovoj sesiji uklanjaju se iz dijeljene memorije u završnoj izbacivanje, oslobađajući memorijsko područje za sljedeći zahtjev.
Isti dispečer → red čekanja → radni proces → međuspremnik → ciklus implementacije ponavlja se za svaku interakciju korisnika, bez obzira na to potječe li zahtjev od SAP GUI, preglednik putem ICM-a ili vanjski sustav putem pristupnika.





