Sun Java Application Server czyli serwer J2EE od Suna za darmo 2019-01-11 Michał Szklarzewski
Plan prezentacji Drogo znaczy dobrze? Wymagania sprzętowe i proces instalacji Anatomia Administracja Od teorii do praktyki Co mówią inni? Wnioski 2019-01-11 Michał Szklarzewski
Czy drogo znaczy dobrze? Wybór serwera aplikacji (koszt, wydajność, skalowalna niezawodność, przejrzysta administracja itp.) Dwie grupy serwerów aplikacji - kompleksowe serwery aplikacyjne: WebSphere(IBM), WebLogic(BEA), Oracle AS - rozwiązania darmowe: np. JBoss (~25.000 pobrań miesięcznie!) 2019-01-11 Michał Szklarzewski
Czy drogo znaczy dobrze? [suite] Powstanie Sun Java System Application Server (SJSAS) Wersja Platform Edition 8.1 jest darmowa z przeznaczeniem do dewelopmentu, produkcji i dystrybucji. 2019-01-11 Michał Szklarzewski
Wymagania sprzętowe SJSAS 8 Platform Edition dostępny jest na następujących platformach: Windows 2000/XP/2003 Server, Solaris (SPARC i x86), Sun Java Desktop System, Linuks Minimalne wymagania: 256 MB RAM oraz 250 MB wolnego miejsca (zalecane 512 MB RAM, gdy uruchomiony jest np. Eclipse bądź NetBeans) 2019-01-11 Michał Szklarzewski
Proces instalacji Proces instalacji jest bardzo prosty: ogranicza się do potwierdzenia ścieżek instalacyjnych, domyślnych portów (aplikacyjny: 8080, HTTPS: 1043, konsola administracyjna: 4848) i hasła administratora. 2019-01-11 Michał Szklarzewski
Co jest w środku? W standardowym pakiecie znajdują się: - serwer aplikacji, - deploytool – aplikacja do tworzenia archiwów i umieszczania ich na serwerze, - asadmin utility – możliwość wywołania czynności administracyjnych z linii poleceń, - Sun Java System Message Queue – implementacja JMS, - PointBase – funkcjonująca na maszynie wirtualnej baza danych, - pakiet przykładowych aplikacji 2019-01-11 Michał Szklarzewski
Anatomia Podstawowymi elementami tworzącymi strukturę serwera J2EE są: - będący platformą komponentów Enterprise EJB Container - obsługujący strony JSP i serwlety Web Container, - odbierający żądania klientów serwer HTTP (w tym przypadku – Tomcat) 2019-01-11 Michał Szklarzewski
Anatomia [rysunek] 2019-01-11 Michał Szklarzewski
Anatomia [suite] Kontener EJB obsługuje komponenty zgodnie ze specyfikacją EJB v 2.1 (ciekawa cecha możliwość stworzenia ReadOnly Bean, których właściwością jest przechowywanie danych bez możliwości ich modyfikacji) Kontener serwletów – specyfikacja JSS v 2.4 JDBC v 3.0 (Oracle, MSSQL, DB2, MySQL, Postgres, Cloudspace) 2019-01-11 Michał Szklarzewski
Administracja Głównym narzędziem administracyjnym w SJSAS jest konsola, pozwalająca zarządzać właściwościami serwera, poszczególnych kontenerów, jak i umieszczania na serwerze aplikacji 2019-01-11 Michał Szklarzewski
Administracja [rysunek] 2019-01-11 Michał Szklarzewski
Od teorii do praktyki Przykład gotowej aplikacji - archiwum ear Archiwum ear składa się z archiwum example.war stanowiącego warstwę prezentacji, archiwum example-ejb.jar stanowiącego warstwę logiki (EJB), deskryptorów application.xml oraz sun-application.xml 2019-01-11 Michał Szklarzewski
Od teorii do praktyki [suite] Plik application.xml – standardowy deskryptor J2EE opisujący zawartość pliku ear. sun-application.xml zaś zawiera konfigurację dotyczącą wszystkich komponentów EJB (np. określenie ról i dostępu dla całej warstwy logiki) 2019-01-11 Michał Szklarzewski
application.xml <?xml version="1.0" encoding="UTF-8" ?> <application xmlns="http://java.sun.com/xml/ns/j2ee" version="1.4" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd"> <description>Short test</description> <display-name>Test</display-name> <module> <ejb>example-ejb.jar</ejb> </module> <web> <web-uri>example.war</web-uri> <context-root>test</context-root> </web> </application> 2019-01-11 Michał Szklarzewski
Przykładowa aplikacja 2019-01-11 Michał Szklarzewski
Co mówią inni? SJSAS na dzień dzisiejszy ma niewielu użytkowników (kilka banków w USA, które wdrożyły to rozwiązanie) Cieszy się jednak coraz większą popularnością głównie w związku z dość szybkim poprawianiem bugów (np. problemy z usuwaniem bibliotek jar przy usuwaniu aplikacji z serwera) 2019-01-11 Michał Szklarzewski
Wnioski Bardzo dobre (darmowe!) narzędzie zarówno dla początkujących jak i zaawansowanych deweloperów. Rynek serwerów J2EE jest już ukształtowany i nie będzie łatwo przekonać potencjalnych klientów do nowych zmian. Jednakże potencjał, jakim dysponuje SUN można spodziewać się wzrostu popularności SJSAS. 2019-01-11 Michał Szklarzewski
Dokumentacja Dla zainteresowanych (e-books): http://docs.sun.com/app/docs/coll/ApplicationServer8_pe_04q4 2019-01-11 Michał Szklarzewski