Hlavní navigace

JBoss: Stručně z historie a jemný úvod

4. 2. 2008
Doba čtení: 3 minuty

Sdílet

Když se řekne JBoss, většina lidí si vybaví aplikační server. JBoss AS je však jen jedním kouskem z velké skládanky open source projektů, které jsou vyvíjeny z části komunitně a z části firmou JBoss. V tomto novém seriálu se postupně seznámíme s jednotlivými projekty formou praktických ukázek.

Vznik a vývoj firmy JBoss

Vše nastartoval v roce 1999 Marc Fleury. Věnoval se různým projektům v jazyce Java a mezi hlavní oblasti jeho zájmu patřila middleware řešení. Pro podporu vývoje middleware aplikací se rozhodl implementovat jeden ze standardů J2EE, konkrétně EJB kontejner. Tím se zrodil první projekt – EJBoss. Kvůli podobnému názvu se samotným standardem se později přejmenoval na JBoss. V roce 2001 založil Marc Fleury firmu JBoss Group v Atlantě v Georgii. Tou dobou již JBoss implementoval i řadu jiných J2EE standardů a stal se tak prvním open source aplikačním serverem v historii. O několik let později se stal i prvním plně certifikovaným J2EE 1.4 open source aplikačním serverem.

Na počátku roku 2006 usiloval Oracle o koupi společnosti JBoss za 400 milionů dolarů. To se Oraclu nepodařilo mimo jiné proto, že nechtěl zachovat open source povahu JBoss projektů. V dubnu 2006 však uspěl Red Hat s nabídkou 420 milionů dolarů. Ze společnosti JBoss se tak stalo oddělení firmy Red Hat.

JBoss loga

Aktuální situace

Jak bylo již uvedeno, JBoss měl první plně certifikovaný open source aplikační server. Je to certifikát verze 1.4 a nyní aspiruje na certifikaci verze 5. J2EE (resp. moderněji JEE) znamená Java Enterprise Edition. Jedná se o specifikaci usnadňující vývoj aplikací s podporou middleware, servisně orientované architektury (SOA) a „next-generation“ web aplikací (jak se můžete dočíst na java.sun.com/ja­vaee). Na stránce www.jboss.com vidíme, že právě tyto cíle JBoss naplňuje. Kromě komerční verze prezentace existuje i komunitní, věnovaná právě open source projektům. Naleznete ji na adrese www.jboss.org.

Cíle mnoha projektů vycházejí z těch prapůvodních – tedy implementovat různé JEE specifikace (viz například Java EE 5 Tutorial). Mezi takové projekty patří

  • JBoss Messaging – bezpečná a spolehlivá výměna zpráv
  • JBoss Transactions – podpora transakčního zpracování na aplikační úrovni
  • JBoss EJB3 – komponentová architektura (ekvivalent CORBA, COMplus)
  • JBoss Web – Tomcat upravený pro potřeby aplikačního serveru
  • JBoss JMX – management a monitoring aplikací
  • Hibernate – objektově relační mapování

Existují ale i projekty, které standardy teprve definují – např. Seam. Několik zaměstnanců Red Hatu je členy příslušné JCP komise.

Samotné implementace standardů jsou velmi důležité a užitečné, ale stále to ještě není vše potřebné pro vývoj moderních aplikací. Je vhodné jednotlivé implementace nějakým způsobem integrovat a doplnit o další užitečné vlastnosti. Tak vznikají rozsáhlejší projekty, jako například AS (aplikační server) nebo ESB (Enterprise Service Bus).

Existují ovšem i projekty, které stojí mimo toto základní dělení. Jedná se například o MetaMetrix (nástroj na virtualizaci datových úložišť) a JBoss Operations Network (nástroj pro vzdálenou správu, monitorování a aktualizaci middleware aplikací). Oba tyto projekty měly původně uzavřené zdrojové kódy, ale pracuje se na jejich přeměně na open source.

Tento výčet není zdaleka vyčerpávající a zájemcům doporučuji kompletní přehled projektů.

Projekty vs. produkty

Vývojový model, podle nějž vznikají z jednotlivých projektů ucelené produkty, je podobný jako v případě Fedora a Red Hat Enterprise Linux. Do projektů přispívá běžně komunita (stejně jako do Fedory), jsou volně ke stažení včetně zdrojových kódů, zkrátka mají atributy typické pro open source.

ict ve školství 24

Produktizovaná verze naproti tomu vznikne odštěpením určité vývojové větve jednoho, nebo více open source projektů. Obvykle projde integrační fází, kde se více projektů sladí za účelem bezproblémové spolupráce, certifikací na jednotlivé hardwarové platformy, databáze a podobně, a důkladnou kontrolou kvality. K produktům je pak prodávána technická podpora.

Org and enterprise

Závěr

V tomto díle jsme se seznámili s JBoss projekty a jejich vztahem k produktům. Příště už se podíváme blíže na architekturu projektů a zaměříme se na aplikační server.

Autor článku