Ha weben jelenik meg a rendszerünk, kell egy kiszolgáló, ami a böngészőkből érkező kéréseket megválaszolja. Ez szokott lenni a webszerver. Egy ilyen webkiszolgáló szolgáltathat előregyártott HTML lapokat, illetve dinamikus tartalmat is. Az előbbit bármilyen webszerver képes szolgáltatni, míg az utóbbi esetében valami komolyabb rendszer kell.
Java-t használva a "web container" elnevezéssel élünk alapesetben. Ez egy egyszerűbb kiszolgálót takar, amely futtatni tud megfelelően megírt Java programokat (servlet-eket, kis programokat a webes feldolgozáshoz rögzített egyszerű szerkezettel), amelyek akár adatbázissal beszélgetve legyártják a szükséges tartalmat. Ez aránylag egyszerű.
Az web container sokmindenre alkalmas, ám komplex feladatokhoz már kevés. Ilyenkor az alkalmazás már nem tartaható kézben egyszerű programocskák halmazaként, komplexebb felépítést igényelnek. Általában három fő részre szedjük az alkalmazást: az adatokat tartalmazó modell részre, az üzleti logikára és a megjelenítésre. Nyilvánvalóan ezen részek kezelése is komplexebb feladatot jelent, mint a servlet-ek esetében. Szerencsére Java-ban erre megfelelő eszközök vannak, elsősorban az alkalmazásszerverek. Ezek általában egy "EJB container" (Enterprise JavaBean futtatókörnyezet, amely a rábízott EJB komponenseket kezeli) és egy web container részből állnak össze, illetve rendszertől függően számtalan modul nyújthat körítést. Egy alkalmazásszerver funkciói többek között az adatbázisban található adatstruktúra leképezése Java osztályokra (Entity bean-ek), valamint ezek állapotának tárolása (perzisztencia); az üzleti logika megvalósítása Enterprise JavaBean-ek (önálló feladatot végző, menedzselt komponensek) formájában, illetve a megjelenítéshez meglepő módon a már ismert web containert alkalmazzák. Mindebben az a hasznos, hogy rengeteg rutinfeladatot ("favágást") átvesznek a fejlesztőtől, mint például az adatbázis-kapcsolatok kezelését, vagy az erőforrások elosztását több kiszolgáló számítógép között. Az alkalmazásszerveren futó rendszernek mindegy, hogy minden egy gépre lett telepítve vagy 10 gépen elosztva fut a rendszer.
Ezekre a rendszerekre persze a későbbiekben még bőven visszatérünk, mivel az Enterprise Java technológia alapját képezik.
Példák a rendszerekre:
Web container: Tomcat, Jetty
Alkalmazásszerver: JBoss, Liferay, IBM WebSphere, BEA WebLogic
Webszerver vs. alkalmazásszerver
2007.11.19. 23:41 | JavasAsszony | Szólj hozzá!
Címkék: webszerver enterprise java java ee alkalmazasszerver ejb servlet
A bejegyzés trackback címe:
https://enterprisejava.blog.hu/api/trackback/id/tr62235039
Kommentek:
A hozzászólások a vonatkozó jogszabályok értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a Felhasználási feltételekben és az adatvédelmi tájékoztatóban.
Nincsenek hozzászólások.