Serwery aplikacyjne Java

Wszystkie nowe witryny internetowe działają wykorzystując serwery aplikacyjne.

Wszystkie nowe witryny internetowe działają wykorzystując serwery aplikacyjne.

Sukces serwerów aplikacyjnych przeszedł wszelkie oczekiwania ich producentów. Nadal jednak jest sporo nieporozumień, dotyczących określenia, czym właściwie jest serwer aplikacyjny. Każdy z produktów bowiem różni się od oferty konkurencji.

Panuje zgoda co do tego, że serwer aplikacyjny jest platformą uruchamiania aplikacji internetowych. Jednak zwykle nie jest on serwerem internetowym. Serwer internetowy bowiem obsługuje klientów Internetu za pośrednictwem protokołu HTTP, podając strony HTML i wykonując skrypty CGI, JavaScript i inne. Serwer aplikacyjny natomiast zapewnia platformę do uruchamiania logiki aplikacji w pośredniej warstwie programowej. Większość serwerów aplikacyjnych posługuje się zewnętrznym serwerem Web do komunikacji z klientami.

Przyjęto, że serwer aplikacyjny w wersji Enterprise jest przeznaczony do obsługi "poważnych" witryn internetowych, podczas gdy do obsługi małych serwisów WWW wystarczy serwer Web. Serwer aplikacyjny jest używany wtedy, gdy trzeba wykonywać transakcje poprzez sieć, potrzebne jest skomplikowane przetwarzanie warunków biznesowych przy dokonywaniu operacji. Krótko mówiąc - serwer służy aplikacjom dla dużych przedsiębiorstw.

Powstają serwery aplikacji

Jak rozwijała się idea serwera aplikacyjnego? Do komunikacji wewnątrz jednej, monolitycznej aplikacji nie potrzeba specjalnych środków. Jednak aplikacja podzielona na dwie lub więcej części wymaga niezawodnych środków komunikacji. Zwykle do tego celu używa się zdalnego wywołania procedur (RPC) lub oprogramowania middleware do kolejkowania komunikatów (MOM). Ich rozwinięciem jest broker obiektowy ORB, zgodny ze specyfikacją CORBA. Jednak komunikacja nie wystarcza - trzeba zapewniać również integralność danych. Tu z pomocą przychodzą monitory transakcyjne, takie jak CICS (IBM) czy Tuxedo (BEA Systems). Na przełomie lat 1997/98 pojawiły się produkty będące połączeniem monitora transakcyjnego i brokera obiektowego - obiektowe monitory transakcyjne Orbix (firmy Iona Technologies) i M3 (BEA Systems). Te produkty można uznać za protoplastów współczesnych serwerów aplikacyjnych.

Java ze swoim integralnym i wygodnym w użyciu programowaniem obiektowym zmieniła obraz informatyki bardziej niż jakakolwiek inna technologia ostatnich lat. Ogłoszenie w marcu 1998 r. specyfikacji komponentów serwerowych Enterprise Java Beans (EJB) przyczyniło się do popularyzacji serwerów aplikacyjnych. Wszystkie obecnie dostępne produkty klasy Enterprise obsługują EJB. Można więc mówić o serwerach EJB.

Wyjątkiem jest MTS (Microsoft Transaction Server). Pojawił się on wcześniej niż serwery EJB, ale nie był zbyt intensywnie promowany przez Microsoft. Obecnie jest traktowany przez firmę jako przeciwwaga dla EJB. Microsoft obiecywał nawet połączyć MTS z systemem operacyjnym Windows 2000 w postaci technologii obiektowej COM+, ale prawdopodobnie zrezygnował z tego pomysłu.

MTS nie można jednak uważać za produkt klasy Enterprise. Po pierwsze, działa tylko na Windows. Po drugie, jego skalowalność jest znacznie mniejsza ze względu na ograniczenia Windows. Po trzecie, MTS nie zapewnia przechowywania stanu sesji, realizując odpowiednik beanów sesji EJB - brak w nim odpowiednika trwałych beanów encji.

Integrować dane i aplikacje

Poważne aplikacje dla przedsiębiorstwa muszą mieć dostęp do różnych źródeł danych i systemów działających na różnym sprzęcie. Budowanie aplikacji rozproszonych przy wykorzystaniu możliwości, jakie oferuje CORBA, nie jest łatwe. Łączenie komponentów wymaga pisania wielu interfejsów w celu połączenia różnych ram, tworzących typowy pakiet implementacyjny CORBA.

Platforma Java Enterprise Edition, łącząca elementy i ramy pochodzące z CORBA, pozwala nowym serwerom aplikacyjnym na dostęp do wielu platform i aplikacji napisanych w różnych językach, łącznie z aplikacjami działającymi od dawna, bez konieczności zajmowania się szczegółami związanymi z dostępem do poszczególnych usług.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200