Serwermania

Na rynku dostępnych jest 40 różnych serwerów aplikacyjnych. Obecnie jest to najszybciej rozwijająca się kategoria oprogramowania dla przedsiębiorstw.

Na rynku dostępnych jest 40 różnych serwerów aplikacyjnych. Obecnie jest to najszybciej rozwijająca się kategoria oprogramowania dla przedsiębiorstw.

Gdy Tim Berners-Lee opracował technologię, która wkrótce stała się podstawą tego, co obecnie funkcjonuje jako World Wide Web, nie zamierzał tworzyć niczego poza aplikacją globalną, pozwalającą użytkownikom na dostęp do dokumentów i tworzenie połączeń między nimi, niezależnie od platformy sprzętowej i systemowej. Nawet w tej ograniczonej postaci było to wielkie wyzwanie. Jednak rozwój przedsięwzięcia przekroczył oczekiwania nawet największych entuzjastów.

Informacja w sieci

Podstawy WWW są proste. Tworzą je trzy protokoły publiczne, nie związane z żadnymi firmami. HTTP bazuje na złożonych mechanizmach transportowych. TCP/IP zapewnia komunikację między klientami a serwerem. Adresowanie za pomocą URL rozwiązuje problem unikalnej identyfikacji zasobów i danych, bez potrzeby utrzymywania scentralizowanej struktury i kontroli. Do prezentacji jest stosowany język HTML. Te elementy WWW wywołały ogromne zmiany w formie przetwarzania. Wprowadzenie ich do firmy zapewnia to, czego nie zapewniały systemy otwarte: możliwość współpracy technologii różnych producentów.

Komunikacja stwarza potrzebę dostępu do danych. Narzędzia dostępu do danych z prostej przeglądarki przekształciły się w wyrafinowane technicznie produkty do raportowania, analiz, drążenia danych. Integracja narzędzi z produktami typu middleware udostępniła dane z mainframe'ów i dawnych aplikacji. Informacja jest coraz lepiej dostępna, niezależnie od tego, gdzie się znajduje.

Pierwsze serwery aplikacji pojawiły się jako tzw. Web serwery. Większość dokumentów w sieci Web ma charakter statycznych stron HTML. Obsługa i zarządzanie nimi wymaga specjalizowanych narzędzi tworzących protokół HTTP, zajmujących się dostarczaniem stron klientom, czasem również tworzących strony HTML z "surowej" informacji tekstowej lub z bazy danych.

Dominująca na początku lat 90. architektura klient/serwer również wytworzyła własne serwery aplikacyjne. Uaktualnianie logiki aplikacji (reguł biznesowych) w każdej stacji klienta z Windows stało się koszmarem administratorów. Producenci systemów zarządzania bazami danych proponowali rozwiązania polegające na włączaniu logiki biznesowej do serwera bazy w postaci tzw. procedur składowanych. Idea zyskała spore poparcie, ale szybko okazało się, że istnieje lepsze rozwiązanie. Była nim pośrednia warstwa oprogramowania (middleware), która pozwala na integrację danych z różnych źródeł i dostarczanie ich do wszystkich klientów. Początkowo warstwę tę trzeba było tworzyć samodzielnie, zajmując się wszystkim: od obsługi logiki biznesowej, przez bezpieczeństwo, po rozdzielanie obciążenia. Stosunkowo szybko pojawiły się też rozwiązania komercyjne, delegujące większość czynności wspólnych dla wszystkich aplikacji na system operacyjny lub specjalizowane pakiety programowe.

Inny kierunek rozwoju serwerów aplikacyjnych pojawił się w wyniku potrzeby polepszenia skalowalności aplikacji przez rozdzielenie jej na wiele serwerów sprzętowych. Niektóre pakiety narzędziowe dla programistów jeszcze oferują takie ograniczone funkcjonalnie serwery aplikacyjne, zapewniające jedynie obsługę logiki aplikacji w pośredniej warstwie programowej, natomiast nie zapewniające innych usług systemowych ani łatwego dostępu do nich.

Idzie nowe

Najwięksi producenci systemów uznali, iż należy wykorzystać własne doświadczenia w zakresie obsługi transakcji. Zaczęli więc opracowywać zaawansowane technicznie rozwiązania obiektowych serwerów aplikacyjnych, pozwalających na uruchamianie i obsługę setek tysięcy transakcyjnych komponentów aplikacji biznesowej na oddzielnym serwerze sprzętowym. Zapewnia to nie tylko łatwość skalowania, gdyż w jednej aplikacji można korzystać z wielu takich serwerów, ale również łatwy dostęp do usług systemowych, katalogowych i bezpieczeństwa.

Serwer aplikacji składa się z trzech zasadniczych modułów: do komunikacji z bazami danych i aplikacjami usługowymi (usługi katalogowe, serwer bezpieczeństwa), do komunikacji ze stacjami klienta (bezpośrednio lub poprzez Web serwer) oraz do uruchamiania logiki biznesowej aplikacji.

Dwie technologie odgrywają zasadniczą rolę w kształtowaniu postaci serwerów aplikacyjnych. Technologia CORBA zapewnia możliwość komunikacji między różnymi aplikacjami i komponentami aplikacji rozproszonej oraz dostęp do specjalizowanych usług. Java natomiast zapewnia jednolity sposób komunikacji dowolnych aplikacji z różnymi serwerami aplikacyjnymi, bazami danych, systemami. Nowe rozwiązania w Javie 2 pozwalają na wprowadzanie komponentów Enterprise Java Beans do serwera oraz bezpośredni dostęp z Javy do komponentów architektonicznych CORBA. Coraz częściej obserwuje się integrację tych technologii w nowych serwerach aplikacyjnych.

Rynek rośnie

Obecnie dostępnych jest ok. 40 różnych serwerów aplikacyjnych, od prostych Web serwerów po wyrafinowane programy integrujące wiele funkcji systemowych. O różnorodności oferty świadczy to, że nie istnieją dwa produkty wzajemnie zamienne. Można jednak obserwować intensywną konsolidację producentów, licencjonowanie udanych produktów w celu włączenia ich do własnej oferty oraz silną rolę największych dostawców baz danych oferujących własne rozwiązania.

W ciągu tego roku prawdopodobnie większość serwerów aplikacyjnych będzie zawierała funkcjonalność typową dla brokerów obiektowych CORBA, zintegrowaną z obsługą komponentów Enterprise Java Beans. Nie wiadomo natomiast czy pojawi się równie silna potrzeba obsługi komponentów COM. Microsoft oferuje wprawdzie własne rozwiązania, ale nie są one tak uniwersalne, jak rozwiązania konkurencji, bazujące na technologiach CORBA/Java.

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

TOP 200