Enhydra może zastąpić drogie serwery aplikacyjne

Enhydra to popularny serwer aplikacyjny open source, który jest dostępny bezpłatnie na stroniehttp://www.enhydra.org lub też za opłatą w firmie Lutris Technologies. W drugim wariancie, oprócz serwera, nabywca otrzymuje obszerną dokumentację oraz dodatkowe aplikacje wzbogacające funkcjonalność rozwiązania. A te są nie do przecenienia, zważywszy że Enhydra jest pozycjonowana jako serwer aplikacyjny, przeznaczony do pracy nie tylko w tradycyjnym środowisku internetowym, lecz także do udostępniania swoich usług w sieciach telefonii bezprzewodowej GSM.

Aplikacje bezprzewodowe

Popularne serwery aplikacyjne, takie jak BEA WebLogic, IBM WebSphere czy Oracle Application Server, są w zasadzie przeznaczone do osadzania aplikacji działających w sieciach TCP/IP. Przystosowanie tych serwerów do świadczenia usług na rzecz środowisk bezprzewodowych wykorzystujących protokół WAP sprowadza się najczęściej do samodzielnego przygotowywania przez użytkowników stosownych interfejsów oraz znajomości technologii WAP/WML czy XHTML.

Pakiet komercyjny Enhydra zawiera dobrze przygotowaną dokumentację różnych technologii i języków stosowanych w sieciach bezprzewodowych oraz dwie gotowe, przykładowe aplikacje: AirSent do obsługi firmy kurierskiej i Enhydra Mail - poczty elektronicznej w sieciach GSM. W testowaniu przykładowych i tworzonych aplikacji pomagają dostarczone emulatory popularnych telefonów GSM oraz wersja ewaluacyjna serwera WAP Nokii. W Internecie są również dostępne bezpłatne pakiety Alligata i Kannel, bramki WAP i SMS, które mogą współpracować z Enhydrą.

Poważny konkurent

Enhydra jest poważnym konkurentem liderów rynku serwerów aplikacyjnych IBM, BEA, Oracle oraz IONA Technologies. Wprawdzie serwer nie ma certyfikatu zgodności ze specyfikacją J2EE z powodu braku obsługi komunikacji asynchronicznej JMS i braku wbudowanego brokera obiektowego ORB, ale zawiera pełne wsparcie istotnych elementów aplikacji Java dla sieci Web: servletów w wersji 2.2 i stronic serwerowych JSP 1.1.

Enhydra oferuje także innowacyjne wsparcie XML za pośrednictwem wbudowanego kompilatora XMLC, gene- rującego klasy Java z dokumentów HTML/XML. Zapewnia to wyższą wydajność aplikacji niż typowe rozwiązanie problemu, polegające na tworzeniu stron JSP, które są mniej wydajne niż servlety.

Wbudowane servlety, zwane Presentation, Session i Database Managers, służą odpowiednio do obsługi: połączenia kodu Java z adresem URL, utrzymywania stanu sesji (z użyciem plików cookie lub bez nich) oraz dostępu do baz danych zgodnych z JDBC. Projektowanie i tworzenie baz danych oraz odtwarzanie struktury baz istniejących umożliwia graficzne narzędzie Data Object Design Studio. Odpowiada ono również za tworzenie kodu Javy realizującego dostęp do bazy danych i umożliwia tworzenie indeksów i powiązań między tabelami. Zapytania do bazy danych można tworzyć i testować z wykorzystaniem narzędzia Query Builder.

Oddzielny program MultiServer służy do monitorowania pracy serwerów aplikacyjnych, jak również kontroli stanu aplikacji na wszystkich działających instancjach serwera Enhydra.

Moduł Kelp 2.0 umożliwia wykorzystanie pakietów programistycznych Borland JBuilder i Oracle JDeveloper (licencyjny JBuilder) do tworzenia i osadzania aplikacji. Przewiduje się również wsparcie dla Sun Forte for Java.

Wydajność i skalowalność

Przewidzenie obciążenia serwerów aplikacyjnych, szczególnie tych, które udostępniają usługi w Internecie nieokreślonej liczbie użytkowników, jest bardzo trudne. Z tego też powodu trudno jest oszacować zapotrzebowanie, a zakup superwydajnego serwera nie zawsze jest uzasadniony ekonomicznie. Dlatego każdy z producentów serwerów aplikacyjnych stara się zapewnić możliwość współpracy wielu serwerów aplikacyjnych działających na oddzielnych komputerach lub w sprzętowym klastrze.

Lutris zapewnia możliwość współpracy wielu serwerów Enhydra za pośrednictwem dodatkowego, bezpłatnego modułu Enhydra Director. Realizuje on równoważenie obciążenia zapytaniami między wszystkimi dostępnymi serwerami aplikacyjnymi.

Koszt pakietu Enhydra dla programisty wynosi 695 USD, natomiast licencji serwera przeznaczonego do osadzania aplikacji - 995 USD na jeden procesor. Oczywiste wydaje się, że za tak niewielką cenę nie można oczekiwać takich samych właściwości jak w przypadku w pełni komercyjnych produktów, których cena licencji na jeden procesor wynosi ponad 10 tys. USD. Niemniej Enhydra wydaje się rozsądną, relatywnie tanią alternatywą, wartą rozważania przy projektowaniu aplikacji dla WWW i bezprzewodowych telefonów GSM obsługujących WAP.


TOP 200