servidores de aplicaciones€¦ · servidores de aplicaciones • administración de recursos en...

19
© 2011-2012 Depto. Ciencia de la Computación e IA Especialista Universitario Java Enterprise Servidores de aplicaciones Administración de recursos en WebLogic

Upload: others

Post on 06-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

© 2011-2012 Depto. Ciencia de la Computación e IA

Especialista Universitario Java Enterprise

Servidores de aplicaciones

• Administración de recursos en

WebLogic

Page 2: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

2

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA

• Uso general de la consola.

• Administración de un dominio WebLogic.

• Despliegues.

• Orígenes de datos.

• Mensajería JMS.

Índice

2

Page 3: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

3

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA WebLogic

Uso general de la consola

3

Page 4: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

4

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA

Estados de un servidor

4

Page 5: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

• Control de los servidores desde la consola

• Si un servidor no consigue arrancar correctamente, pasa a estado

FAILED.

• El Node Manager intentará reiniciarlo (estado FAILED_STARTING),

pero si no es posible acabará en (FAILED_NOT_RESTARTABLE).

5

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA

Estados de un servidor

5

Page 6: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

6

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA

Cachés distribuidas / Coherence

6

Page 7: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

JPA:

• Caché de primer nivel (reduce el número de sentencias SQL,

dentro de una sesión).

• Caché de segundo nivel (almacena registros de forma compartida

entre todas las sesiones reduciendo notablemente los accesos a

base de datos).

• Permite compartir información entre nodos (replicada o

distribuida).

• Consultas en paralelo.

• Las cachés implementan la interfaz Mapa (DistributedMap).

7

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA

Cachés distribuidas / Coherence

7

Page 8: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

8

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA

Descriptores de despliegue específicos

8

• Extensiones sobre el

estándar JEE 5.

• Se pueden combinar

con anotaciones.

Page 9: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

9

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA

• Complementario a application.xml.

• Permite declarar

recursos globales a la

aplicación, (disponibles

para todos los módulos

del EAR).

weblogic-application.xml

9

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39

<?xml version='1.0' encoding='UTF-8'?> <weblogic-application xmlns="http://xmlns.oracle.com/weblogic/weblogic-application" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-application http://xmlns.oracle.com/weblogic/weblogic-application/1.0/weblogic-application.xsd"> <ejb> <start-mdbs-with-application>false</start-mdbs-with-application> </ejb> <listener> <listener-class>es.ua.jtech.MiAppController </listener-class> <listener-uri>libreria.jar</listener-uri> </listener> <capacity> <name>Capacity1040</name> <count>1040</count> </capacity> <max-threads-constraint> <name>MaxThreads40</name> <count>40</count> </max-threads-constraint> <min-threads-constraint> <name>MinThreads10</name> <count>10</count> </min-threads-constraint> <work-manager> <name>TareaEspecifica</name> <max-threads-constraint-name>MaxThreads40</max-threads-constraint-name> <min-threads-constraint-name>MinThreads10</min-threads-constraint-name> <capacity-name>Capacity1040</capacity-name> </work-manager> <library-ref> <library-name>libExt</library-name> <specification-version>1.0</specification-version> <exact-match>true</exact-match> </library-ref> </weblogic-application>

Page 10: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

10

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA

• Complementario a web.xml.

• Permite configurar

propiedades de las

sesión HTTP,

mapear roles de

seguridad y declarar

recursos a nivel de

aplicación Web.

weblogic.xml

10

1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

<?xml version='1.0' encoding='UTF-8'?> <weblogic-web-app xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.0/weblogic-web-app.xsd"> <description>WebApp Descriptor</description> <session-descriptor> <timeout-secs>600</timeout-secs> <id-length>32</id-length> <tracking-enabled>true</tracking-enabled> <cookie-name>WebAppID</cookie-name> <url-rewriting-enabled>true</url-rewriting-enabled> </session-descriptor> <jsp-descriptor> <keepgenerated>false</keepgenerated> <package-prefix>servlet_jsp</package-prefix> <page-check-seconds>30</page-check-seconds> <verbose>true</verbose> <working-dir>./tmpjsps/miTemporal</working-dir> </jsp-descriptor> <container-descriptor> <session-monitoring-enabled>true</session-monitoring-enabled> <save-sessions-enabled>true</save-sessions-enabled> </container-descriptor> <context-root>miWeb</context-root> </weblogic-web-app>

Page 11: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

11

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA

• Asociar un gestor de trabajo a una aplicación Web.

weblogic.xml

11

1 <wl-dispatch-policy>TareaEspecifica</wl-dispatch-policy>

Page 12: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

12

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA

• Complementario a ejb-jar.xml.

• Permite declarar

propiedades

extendidas de los

EJB’s.

Weblogic-ejb.xml

12

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33

<weblogic-ejb-jar xmlns="http://xmlns.oracle.com/weblogic/weblogic-ejb-jar" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-ejb-jar http://xmlns.oracle.com/weblogic/weblogic-ejb-jar/1.0/weblogic-ejb-jar.xsd"> <weblogic-enterprise-bean> <ejb-name>miEJB</ejb-name> <stateless-session-descriptor> <pool> <max-beans-in-free-pool>128</max-beans-in-free-pool> <initial-beans-in-free-pool>0</initial-beans-in-free-pool> </pool> </stateless-session-descriptor> <enable-call-by-reference>true</enable-call-by-reference> <jndi-name>jtech.miEJB</jndi-name> <dispatch-policy>TareaEspecifica</dispatch-policy> </weblogic-enterprise-bean> <weblogic-enterprise-bean> <ejb-name>miMDB</ejb-name> <message-driven-descriptor> <pool> <max-beans-in-free-pool>50</max-beans-in-free-pool> <initial-beans-in-free-pool>1</initial-beans-in-free-pool> </pool> <destination-jndi-name>jtech.miCola</destination-jndi-name> </message-driven-descriptor> <transaction-descriptor> <trans-timeout-seconds>300</trans-timeout-seconds> </transaction-descriptor> <jndi-name>jtech.miMDB</jndi-name> <dispatch-policy>TareaCola</dispatch-policy> </weblogic-enterprise-bean> </weblogic-ejb-jar>

Page 13: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

13

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA

La interfaz ApplicationLifecycleListener define los

métodos:

• preStart(ApplicationLifecycleEvent evt)

• postStart(ApplicationLifecycleEvent evt)

...

• preStop(ApplicationLifecycleEvent evt)

• postStop(ApplicationLifecycleEvent evt)

Ciclo de vida de las aplicaciones JEE

13

1 2 3 4 5

<listener> <listener-class>es.ua.jtech.MiAppController </listener-class> <listener-uri>libreria.jar</listener-uri> </listener>

Page 14: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

14

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA

• Son librerías desplegadas de forma independiente a las

aplicaciones que las utilicen.

• Reduce el consumo de memoria y fomenta la reutilización del

código.

• La librería compartida se define en el MANIFEST del JAR:

• Desde las aplicaciones, se referencian en el weblogic-

application.xml

Librerías compartidas (shared J2EE libraries)

14

Extension-Name: myExtension Specification-Version: 2.0 Implementation-Version: 9.0.0

1 2 3 4 5 6

<library-ref> <library-name>myExtension</library-name> <specification-version>2.0</specification-version> <exact-match>true</exact-match> </library-ref>

Page 15: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

15

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA

• Podemos tener varias versiones de una librería desplegadas

de forma simultánea.

• Desde un EAR podremos referenciar a JAR’s, WAR’s y EAR’s.

• Desde un WAR únicamente podremos referenciar a otros

WAR.

Librerías compartidas (shared J2EE libraries)

15

Page 16: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

16

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA

• Además de librerías podemos versionar aplicaciones

completas.

• Podemos tener hasta tres versiones de una aplicación, pero

únicamente una activa.

• La gran ventaja de este mecanismo es que permite actualizar

una aplicación en caliente, sin dejar de dar servicio.

• La versión se define en el MANIFEST.MF

Versionado de aplicaciones

16

Manifest-Version: 1.0 Created-By: 1.4.1_05-b01 (Sun Microsystems Inc.) Weblogic-Application-Version: v1

Page 17: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

17

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA

• Conjunto de conexiones

y Orígen de datos se

crean de forma

simultánea.

Orígenes de datos

17

Page 18: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

18

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA

Recursos necesarios:

• Almacenes persistentes (archivos o BBDD). Por defecto se

usa un almacén interno.

• Servidor JMS, es el «middleware orientado a mensajes» de

WebLogic.

• Módulos JMS, son agrupaciones de recursos para ser

gestionados de forma unificada. Estos recursos pueden ser:

• Cuotas.

• Plantillas.

• Colas/Tópicos

Mensajería JMS

18

Page 19: Servidores de aplicaciones€¦ · Servidores de aplicaciones • Administración de recursos en WebLogic . 2 ... • Las cachés implementan la interfaz Mapa (DistributedMap). 7

19

Especialista Universitario Java Enterprise

Servidores de Aplicaciones © 2011-2012 Depto. Ciencia de la Computación e IA WebLogic

¿Preguntas?

19