pientka geronimo v0 - gesellschaft f r informatik ... · benchmark (specjappserver2004) statistiken...

30
1 Geronimo Web 2.0 Apache Geronimo Startrampe für Web-2.0-Anwendungen Frank Pientka, Januar 2009, Bremen comes to you Apache Geronimo = Startrampe für Web 2.0 Geronimo Web 2.0 Page 2 Pientka, Impaq AG, Apache Geronimo Vorstellung des Referenten: Frank Pientka Dipl.-Informatiker, Senior Consultant bei der IMPAQ AG in Dortmund Veröffentlichungen und Vorträge zu Applikations- und Portalservern

Upload: hoangmien

Post on 14-Apr-2018

222 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

1

Geronimo

Web 2.0

Apache GeronimoStartrampe für

Web-2.0-Anwendungen

Frank Pientka, Januar 2009, Bremencomes to you

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 2 Pientka, Impaq AG, Apache Geronimo

Vorstellung des Referenten: Frank Pientka

Dipl.-Informatiker,Senior Consultant

bei der IMPAQ AG in DortmundVeröffentlichungen und Vorträge zuApplikations- und Portalservern

Page 2: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

2

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 3 Pientka, Impaq AG, Apache Geronimo

IMPAQ Gruppe – Shortfacts

Los AngelesLondon Posen

Warschau

Hamburg

Dortmund

Frankfurt

Headquarter Zürich München

�1992 gegründet

�~ 400 Mitarbeiter

�9 Standorte weltweit

�Nearshore Services Center in Polen

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 4 Pientka, Impaq AG, Apache Geronimo

Agenda

1 Noch ein Applikationsserver?

2 Apache Geronimo: Überblick

3 Erster Eindruck

4 Apache SOA-Produkte

5

6

Web 2.0 Beispiele

Ausblick

Page 3: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

3

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 5 Pientka, Impaq AG, Apache Geronimo

Was ist ein JavaEE-Server?

Quelle: SUN

Java Platform Enterprise Edition (Java EE 5.0)

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 6 Pientka, Impaq AG, Apache Geronimo

JavaEE Generationen

zertifizierte Server

2029

24

12

Page 4: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

4

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 7 Pientka, Impaq AG, Apache Geronimo

JavaEE Geschichte

Die Anforderungen steigen. Komplexität auch?

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 8 Pientka, Impaq AG, Apache Geronimo

JavaEE 6.0 steht vor der Tür…2009

JSR-316 11 Monate Verzug im Zeitplan!Q1/2009: alle JSR sollten early public Draft seinZiele: � Erweiterbarkeit, Modularität/ Profile, einfachere Entwicklung, SCANeue JSRs: � JSR-196 Java Authentication SPI for Containers � JSR-236 Timer for Application Servers � JSR-237 Work Manager for Application Servers � JSR-299 Web Beans (Public Review)� JSR-311 JAX-RS: Java API for RESTful Web Services Aktualisierte Technologien:� Java SE 6-Unterstützung� Enterprise JavaBeans 3.1 (Public Review Ballot)� Java Persistence API 2.0 (Public Review Ballot)� Servlets 3.0 (Public Review Ballot)� JavaServer Faces 2.0 (Proposed Final Draft)� JAX-WS 2.2 (Maintenance)� Java EE Connector API 1.6 (Public Review Ballot)

“Java EE 6 will be the most important release of the platform since it was released nearly 10 years ago”

Rod Johnson

Page 5: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

5

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 10 Pientka, Impaq AG, Apache Geronimo

Vergleichsmöglichkeiten

� Marktstudie/Benutzerbefragung: (Evans Data, ohloh, Forester, Gartner)

� Produkttests (JavaMagazin, IX)

� Benchmark (SPECjAppServer2004)

� Statistiken (Download, Aktivitäten)

“Very large, active development team

Over the past twelve months, 26 developers

contributed new code to Apache Geronimo.

This is one of the largest open-source teams in the

world, and is in the top 2% of all project teams

on Ohloh.”

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 13 Pientka, Impaq AG, Apache Geronimo

Codezeilen, Größen im Ohloh.net-Vergleich

GlassFish (80-105 MB)

JBoss Application Server (106 MB)

Apache Geronimo (16, 55, 74 MB)

Page 6: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

6

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 14 Pientka, Impaq AG, Apache Geronimo

Vergleich der Downloadzahlen

JBoss: 30.000 und 100.000 Downloads/ MonatGeronimo: 70.000 und 180.000 Downloads/ MonatGlassfish: 300.000 und 600.000 Downloads/ Monat (inkl. JavaEE SDK)

2.1.1 2.1.2 2.1.32.1

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 16 Pientka, Impaq AG, Apache Geronimo

Agenda

1 Noch ein Applikationsserver?

2 Apache Geronimo: Überblick

3

4 Apache SOA-Produkte

Erster Eindruck

5

6

Web 2.0 Beispiele

Ausblick

Page 7: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

7

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 17 Pientka, Impaq AG, Apache Geronimo

Geronimo modularer Aufbau

Geronimo Kern

Webcontainer

Sicherheit SOAP, WebService

EJB, JPA, Scheduling, Reporting, Portal, andere Plugins

Web-Cluster JMS

Portletcontainer

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 18 Pientka, Impaq AG, Apache Geronimo

Geronimo Versionen

August2003

�Apac

he G

eron

imo P

rojek

t ges

tartet

�V1.0-

M5 rele

ased,

J2EE 1

.4 Z

ertifiz

ieru

ng

Okt2005

Jan2006

�V1.0 re

lease

d

Juni2006

�V1.1 re

lease

d

�V2.1.4

Sep2006

�V1.1.1

releas

ed

Juni2007

�V2.0-M

6 rele

ased,

Java

EE 5

Zerti

fizie

rung

Aug2007

�V2.0.1

releas

ed

Okt2007

�V2.0.2

releas

ed

Feb2008

�V2.1 re

lease

d

Sept2008

�V2.1.3

releas

ed

�V2.2

Jan2009

Page 8: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

8

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 19 Pientka, Impaq AG, Apache Geronimo

Was ist Apache Geronimo?

Ein leichtgewichtiger

JavaEE-Anwendungsserver

unter Apache Lizenz

Schmalfuß(~75 MB download)

JavaEEzertifiziert

Geringe Kosten Professioneller

Support möglich

sehr freie Lizenz

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 20 Pientka, Impaq AG, Apache Geronimo

Apache Geronimo Komponenten

Tomcat

OpenJPA

Page 9: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

9

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 21 Pientka, Impaq AG, Apache Geronimo

Apache Geronimo integriert

Tomcat

OpenJPA

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 24 Pientka, Impaq AG, Apache Geronimo

Geronimo Architektur

LifeCycleService

NamingService

SecurityService

TransactionService

GBean Kernel

Kernel Services

Geronimo

Liferay

Commons

Tomcat ActiveMQ StAX Axis 2 Etc.

Jetty

OpenEJB

OpenJPA

Etc.

CXF

Etc.

Derby Etc.

Etc.

Optional Plugins

Page 10: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

10

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 25 Pientka, Impaq AG, Apache Geronimo

Geronimo Architektur Exkurs: MBean vs. GBean

MBeans-Ansatz mit MBeanServer GBeans-Ansatz mit Mikro-KernelGeronimo verwendet sowohl Constructor als auchSetter Injection

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 26 Pientka, Impaq AG, Apache Geronimo

Geronimo Bean (GBean)

� Modularer Mikro-Kernel (GBean-Manager)� Implementiert J2EE Management Spezifikation (JSR-77)

� Jedes Modul ist eine GBean� GBean haben Lebenszyklus und können zur Laufzeit gestoppt/ gestartet werden (~OSGI)

� GBeans sind Voraussetzung für Plug-ins� GBeans über JMX-Adapter verwaltbar

“Microkernels have won. The only real argument for monolithic systems was performance.” (Andrew Tanenbaum, 1992)

Page 11: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

11

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 27 Pientka, Impaq AG, Apache Geronimo

Geronimo Bean (GBean)

GBeanGBean GBean

Geronimo Kern

KonfigurationKonfiguration

Abhängigkeiten

Abhängigkeiten werden in Deploymentplan beschrieben.

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 28 Pientka, Impaq AG, Apache Geronimo

Geronimo Module/ Konfiguration

� Eindeutiger Modul-Namen, wie in Maven2:moduleId=groupId/artifactId/version/type

� Zusammenstellung von konfigurierten GBeans

� Modul wird selbst wieder als GBean verwaltet

groupId artifactId version type

Page 12: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

12

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 30 Pientka, Impaq AG, Apache Geronimo

Geronimo Module/ Konfiguration

� Beispiel: org.apache.geronimo.configs/welcome-tomcat/2.0.2/car

� Zur Adressierung im Implementierungsplan oder im Deployer-Werkzeug verwendet<dependency>

<groupId>gruppe<groupId>

<artifactId>datei<artifactId>

<version>version<version>

<type>typ<type>

</dependency>

� Abspeicherung im Repository unter repository/

groupId/artifactId/version/artifactIdversion.type

GBean1

GBean2GBean3

Module1

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 31 Pientka, Impaq AG, Apache Geronimo

Modulverwaltung- und Konfiguration

ModuleRepository

speichern

referenziert

Geronimo Kernel

config.xml

laden

Page 13: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

13

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 32 Pientka, Impaq AG, Apache Geronimo

Verzeichnis-Aufbau Repository

$GERONIMO_HOME/repository|+-/...|+-/commons-logging-+| || +-/commons-logging-+| || +--/1.0.4--+| || +-commons-logging-1.0.4.jar+-/...

Von einer Version eines Moduls existiert nur ein ExemplarTransparente Adressierung, Vermeidung von Duplikaten

Ende der

JAR-Hölle

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 33 Pientka, Impaq AG, Apache Geronimo

Geronimo Systemmodule

Page 14: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

14

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 34 Pientka, Impaq AG, Apache Geronimo

Geronimo Systemmodule: Startmeldung

1/9 org.apache.geronimo.configs/rmi-naming/2.1.3/car

2/9 org.apache.geronimo.configs/j2ee-server/2.1.3/car

3/9 org.apache.geronimo.configs/transaction/2.1.3/car

4/9 org.apache.geronimo.configs/j2ee-security/2.1.3/car

5/9 org.apache.geronimo.configs/jasper/2.1.3/car

6/9 org.apache.geronimo.configs/tomcat6/2.1.3/car

7/9 org.apache.geronimo.configs/geronimo-gbean-deployer/2.1.3/car

8/9 org.apache.geronimo.configs/sharedlib/2.1.3/car

9/9 org.apache.geronimo.configs/webservices-common/2.1.3/car

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 35 Pientka, Impaq AG, Apache Geronimo

Modul-Abhängigkeiten

jee-system

jee-specs rmi-naming

tomcat6

tomcat6-

deployer

tomcat6-

console

jee-server

activemq-

ra

activemq-

console

openejb

openejb-

deployer

transaction

xmlbeans

Page 15: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

15

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 36 Pientka, Impaq AG, Apache Geronimo

Eigenes Assembly

jee-system

jee-specs rmi-naming

tomcat6

tomcat6-

deployer

tomcat6-

console

jee-server

activemq-

ra

activemq-

console

openejb

openejb-

deployer

transaction

MyApp

xmlbeans

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 37 Pientka, Impaq AG, Apache Geronimo

Geronimo fertige Assemblies

Big-G WASCE

Little-G Micro-G EigenesPaket

Bsp.: SOA-Assemblygaswerk.sourceforge.net

Nur soviel, wie nötig

Page 16: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

16

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 42 Pientka, Impaq AG, Apache Geronimo

Produktvarianten: Darf es etwas mehr sein?

� Apache Geronimo� Little-G: Webserver ohne Webkonsole

� Tomcat, Jetty: ausgereift vs. innovativ/schnell

� AXIS, CXF: ausgereift vs. flexibel/schnell

� IBM WebSphere Community Edition (WAS CE)� Ohne Source-Code

� Besser Qualität, Dokumentation, Beispiele

� Mehrere Plattformen

� Definiertere, längere Release-Zyklen

� Migrationsmöglichkeit zu IBM WebSphere

� Support

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 43 Pientka, Impaq AG, Apache Geronimo

Installation von Anwendungen

� Web Console

� Hot Deployment Verzeichnis deploy� Nur für Entwicklung, für Produktion deaktivieren

� Kommandozeilen Werkzeug� deployer.sh --user system --password

manager deploy [war/jar/ear] [plan file]

� GShell (Groovy-basiert): gsh.sh� Arten:

� WAR� EAR� RAR� CAR

Page 17: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

17

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 45 Pientka, Impaq AG, Apache Geronimo

Deploymenteinheiten mit Deploymentplan

JAR META-INF\ejb-jar.xmlopenejb-jar.xml

RARMETA-INF\ra.xml

geronimo-ra.xml

WEB-INF\web.xmlgeronimo-web.xmlWAR

EARMETA-INF\application.xml

geronimo-application.xml

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 49 Pientka, Impaq AG, Apache Geronimo

Deployment vereinfachen: Domain spezifische Sprache

Unterschiede: Erstell-/Laufzeit

D

e

p

l

o

y

m

e

n

t

p

l

a

n

Page 18: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

18

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 51 Pientka, Impaq AG, Apache Geronimo

WARweb.xml

geronimo-web.xml

Servlet

applicationContext.xml

<bean id="dataSource"

class="...JndiObjectFactoryBean">

<property name="jndiName">

<value>java:comp/env/Datenbank</value>

</property>

</bean>

...

ctx.getBean(„ Datenbank“)

...

<resource-ref>

<res-ref-name>Datenbank</res-ref-name>

<res-type>javax.sql.DataSource</res-type>

<res-auth>Container</res-auth>

</resource-ref>

<resource-ref>

<ref-name>Datenbank</ref-name>

<pattern>

<groupId>console.dbpool</groupId>

<artifactId>MySqlDS</artifactId>

<name>MySqlDS</name>

</pattern>

</resource-ref>

DB

Beispiel: Anwendungsaufbau

Deplomenentbeschreibung =

Sprache für Geronimo-Deployment

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 53 Pientka, Impaq AG, Apache Geronimo

Deployment auf der Kommandozeile

DeploymentwerkzeugGeronimo

Server

Konfigurationsdatenbank

Repository

Anwendungsmodul

Deploymentplan

Hot, offline, Deployment mit Plan

Page 19: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

19

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 54 Pientka, Impaq AG, Apache Geronimo

Mehrere Geronimo Instanzen, Repositories, Plugins

Geronimo-Server DEV

Geronimo-Server PROD

MavenServlet

CAR-

Modul.JAR

CONFIG

Modul.SER

Repository

Geronimo-Server

Repository

deploy search-plugins

http://geronimo.apache.org/plugins/geronimo-2.1/

http://geronimo.apache.org/plugins/geronimo-2.1/

http://localhost:8080/plugin/maven-repo/

geronimo-plugins.xml

FarmingHosting

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 58 Pientka, Impaq AG, Apache Geronimo

Agenda

1 Noch ein Applikationsserver?

2 Apache Geronimo: Überblick

3

4 Apache SOA-Produkte

Erster Eindruck

5

6

Web 2.0 Beispiele

Ausblick

Page 20: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

20

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 59 Pientka, Impaq AG, Apache Geronimo

Erste Schritte: Skripte

� JDK 5.0 installieren und JAVA_HOME setzten� Herunterladen, auspacken:

� http://geronimo.apache.org/downloads.html

� Server starten: � startup.[bat|sh]

� Aufrufen:� http://localhost:8080/console

� Module anzeigen lassen:� deploy .[bat|sh] list-modules

� Plug-ins suchen, installieren:� deploy.[bat|sh] search-plugins

http://geronimo.apache.org/plugins/samples-2.1.2/

� Anwendung installieren:� deploy .[bat|sh] list-modules

� Server stoppen (CTRL+C): � shutdown.[bat|sh]

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 60 Pientka, Impaq AG, Apache Geronimo

Arbeitsschritte mit Geronimo

Server starten: startup

Anwendung installieren: deploy deploy sample.war

Anwendung startendeploy start ModuleID

Anwendung stoppendeploy stop ModuleID

Anwendung deinstallierendeploy undeploy ModuleID

Server stoppen: shutdown

Page 21: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

21

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 61 Pientka, Impaq AG, Apache Geronimo

Werkzeugunterstützung

� Eclipse 3.4+WTP 3, MAVEN 2.0.8� SUN/IBM JDK 5.0 oder 6.0

Migrationsunterstützung für:� Tomcat� JBoss� BEA WebLogic� WebSphere

Alternativ:� NetBeans� ANT� RAD

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 62 Pientka, Impaq AG, Apache Geronimo

Geronimo Web-Console

Als AJAX-Portlet innerhalb des Pluto-Portal-Kontainershttp://localhost:8080/console

Page 22: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

22

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 63 Pientka, Impaq AG, Apache Geronimo

Agenda

1 Noch ein Applikationsserver?

2 Apache Geronimo: Überblick

3

4

5

Apache SOA-Produkte

6

Web 2.0 Beispiele

Erster Eindruck

Ausblick

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 64 Pientka, Impaq AG, Apache Geronimo

OpenSource SOA-Stack Apache

� Axis/ CXF (Webservice)

� Tomcat/Geronimo (Applikationsserver)

� Pluto/ Jetspeed (Portal)

� ActiveMQ/ ServiceMix (ESB/JBI)

� Synapse-Axis (WS-ESB)/ Camel-CXF

� ODE (Orchestration Director Engine)

� Tuscany (SCA/SDO/DAS)

� jUDDI (Service Registry)

Page 23: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

23

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 65 Pientka, Impaq AG, Apache Geronimo

Apache Geronimo als SOA-Stack

Integration vieler Apache-KomponentenSupport erhältlich

Incubating Apache’s Next Generation Platform, Forrester, 2007

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 66 Pientka, Impaq AG, Apache Geronimo

Apache SOA-Stack

Apache Tomcat

eigene AnwendungSOAP/Web

Services (Axis)

JMS Messaging

Security / Authentication

Web Tier Clustering

andereDienste

eigene Integration

SOAP/Web Services (Axis)

Entwicklungs-Wartungsaufwand

eigene Anwendung

Apache Tomcat

SOAP/Web Services (Axis)

JMS Messaging

Security / Authentication

Web Tier Clustering

weitere Plug-ins für EJBs, Transaktion, etc.

Geronimo Plug-In Kernel

Integriertgetestet

erweiterbar

Page 24: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

24

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 67 Pientka, Impaq AG, Apache Geronimo

Integrierte SOA-Anwendungen

� jUDDI Java Implementierung derUniversal Description, Discovery, und Integration (UDDI) Spezifikation für Web Serviceshttp://localhost:8080/juddi/

� ActiveMQ Konsolen-Portlet

� Pluto Portlet-Container: JSR-168 Portlets

� Axis/ CXF (Webservice + Tools)

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 68 Pientka, Impaq AG, Apache Geronimo

Agenda

1 Noch ein Applikationsserver?

2 Apache Geronimo: Überblick

3

4 Apache SOA-Produkte

5 Web 2.0 Beispiele

Erster Eindruck

6 Ausblick

Page 25: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

25

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 69 Pientka, Impaq AG, Apache Geronimo

WEB 2.0-/SOA-Welt wachsen zusammen

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 71 Pientka, Impaq AG, Apache Geronimo

Webanwendung: klassisch und mit AJAX

traditionell synchron

asynchron mit Ajax

Page 26: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

26

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 83 Pientka, Impaq AG, Apache Geronimo

WAS CE Feature Pack Überblick

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 84 Pientka, Impaq AG, Apache Geronimo

Beispiel: PlantsByWebSphere

Kaufhaus für Pflanzen und Gartengeräte

Page 27: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

27

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 85 Pientka, Impaq AG, Apache Geronimo

PlantsByWebSphere Client-/Server

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 86 Pientka, Impaq AG, Apache Geronimo

index.html

<script type="text/javascript">

dojo.require("dijit.layout.ContentPane");

dojo.require("dijit.layout.TabContainer");

dojo.require("ibm.widget.InventoryGrid");

dojo.require("ibm.widget.ItemDetails");

dojo.require("ibm.widget.HtmlShoppingCart");

</script>

PlantsByWebSphere-Client AJAX-Seitenaufbau

Page 28: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

28

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 89 Pientka, Impaq AG, Apache Geronimo

Agenda

1 Noch ein Applikationsserver?

2 Apache Geronimo: Überblick

3

4 Apache SOA-Produkte

5 Web 2.0 Beispiele

Erster Eindruck

6 Ausblick

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 90 Pientka, Impaq AG, Apache Geronimo

Fazit Geronimo

� Trotz junger Geschichte, beachtliche Reife, grosse Zukunft

� Gute Standardunterstützung

� Gute Dokumentation

� Große Wahlmöglichkeit� Little-G, Tomcat/Jetty, Axis/CFX, Geronimo/WAS CE

� Eigene Assemblies nach Maß

� Gute Migrationsunterstützung

� Einfache und automatisierbare Verwaltung

Page 29: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

29

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 93 Pientka, Impaq AG, Apache Geronimo

Ausblick

� Wiedergeburt des Applikationsservers (SOA/ Web 2.0) -> Großvater bleibt fitEnde der Einheitsgröße, mehrere Konfektionsgrößen (JavaEE 6)

Einheitliches Modulkonzept (Microkernel) für JSE/JEE, OSGI? -> Produktrenovierung, neue Einsatzgebiete

� Geronimo ist flexibel konfigurierbar und erweiterbar -> die Enkel wachsen heran

� Geronimo integriert viele Apache Komponenten -> Apache-SOA-Stack

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 94 Pientka, Impaq AG, Apache Geronimo

Bücher, Artikel Geronimo:

� Apachen Geronimo: Serverhandbuch, Frank Pientka, DPunkt-Verlag� Apachen Geronimo: Frank Pientka, JM 08/08� Experience Java EE Using WebSphere Application Server Community

Edition: Redbook, 11/08, sg247639� Building Dynamic Ajax Applications Using WebSphere Feature Pack

for Web 2.0: Redbook, 11/08, sg247635� Migrating from WebSphere Application Server Community Edition to

WebSphere Application Server: : Redbook, 08/07, sg247433� Developing Rich Internet Applications for WebSphere Application

Server Community Edition: 09/08, IBM developerworks� What’s new in WebSphere Application Server Community Edition 2.1,

06/08, IBM developerworks

Page 30: Pientka Geronimo v0 - Gesellschaft f r Informatik ... · Benchmark (SPECjAppServer2004) Statistiken ... Liferay Commons Tomcat ActiveMQ StAX Axis 2 Etc. ... performance. ” (Andrew

30

Apache Geronimo = Startrampe für Web 2.0

Geronimo

Web 2.0

Page 95 Pientka, Impaq AG, Apache Geronimo

IMPAQ AG

Mobil +49 175 1613922

Phone +49 (231) 9704-200

Fax +49 (231) 9704-199

Senior Berater

Frank Pientka www.impaqgroup.com

Emil-Figge-Str. 85

44227 Dortmund

Vielen Dank für Ihre Aufmerksamkeit!!!

[email protected]

“The entire history of software engineering is

one of rising levels of abstraction”

Grady Booch

Nächste Geronimo Schulung: 8.-9.6.09, OIO, Mannheim

www.oio.de/seminar/open-source/geronimo-schulung.htm