Webinar – El futuro de Oracle Reports y Oracle Discoverer
Oracle WebLogic Server 11g - Disponibilidad, rendimiento, escalabilidad
1. WebLogic Suite 11g – Disponibilidad,
rendimiento y escalabilidad
Carles Biosca (carles.biosca@avanttic.com)
Arquitecto Fusion Middleware
1
2. Agenda
• Oracle Weblogic Suite 11g
• Arquitectura
• Modelos de programación y desarrollo
• Disponibilidad, rendimiento y escalabilidad
• Minimización de costes
2
6. Oracle WebLogic Suite
Plataforma base de proyección de futuro
Fusion Applications Fusion Apps
Desarrolladas
en FMW 11g
Applications Portfolio Applications
en proceso de
Certificación en
WebLogic
Fusion Middleware 11g
Java EE/ISV SOA Suite WebCenter Content Identity Business
Apps Suite Management Management Intelligence FMW 11g
Suite Suite Suite
Certificados y Diferenciados
con WebLogic Suite
WebLogic Suite 11g WebLogic Suite 11g
Grid Foundation
6
8. Topología de Weblogic
Elementos de la arquitectura
• Domain: Unidad de Weblogic con un control Domain
Managed Servers
unificado
• Server: Instancia JVM individual que ejecuta
aplicaciones y utiliza recursos del dominio
• Administration Server: Encargado de la gestión
de la configuración del dominio
config.xml
• Managed Server: El resto de servidores del
dominio
• Cluster : Agrupación de managed servers para
proporcionar escalabilidad y disponibilidad Admin Server
• Node Manager: Proceso que arranca y para los
servers
Cluster
Admin Console
8
10. Componentes de Weblogic Suite
WebLogic Operations Control
Enterprise Manager
Diagnostics Pack
JDeveloper
Applications
Development Tools
ADF Spring POJO …
Management
WebLogic Server and iAS
Web JMS
Java EE TopLink
Services Messaging
Reliability, Availability, Scalability, Performance
Management
Eclipse
Clustering with Coherence EE Scale Out
WLS
JRockit
JRockit JVM WebLogic Real Time
10
12. Desarrollo, Flexibilidad y Productividad
Herramientas y Estándares Java y relacionados
• Soporte a múltiples Modelos de Programación
• Java EE tradicional
• Arquitectura SOA (Web Services)
• Integraciones por mensajería (JMS, MQ…)
• Web 2.0/RIA
• Desarrollos en todo tipo de frameworks (open source, ADF)
• Diferentes Herramientas de Desarrollo
• Entorno de ejecución común para distintas soluciones (BI, SOA, BUS, BPM,…)
• Múltiples herramientas de desarrollo Java
• Integración con otros entornos
• Otros entornos de aplicaciones (Java, .NET, Tuxedo, Messaging)
• Infraestructura de seguridad y gestión de identidades
• Bases de datos y otras infraestructuras
12
13. Herramientas de desarrollo específicas
• Oracle JDeveloper
• El IDE completo para Fusion Middleware/WL Server
• 3 opciones para diferentes tipos de desarrollos:
• Studio – Fusion Development, ADF, SOA
• Java EE – Java EE básico y Web Services
• Java – Solamente Java
• Oracle Enterprise Eclipse Pack
• Plug-ins para Eclipse
• WebLogic Java EE, Spring, Web Services, JPA
13
15. Necesidades de e-Commerce
• Calidad de servicio al usuario (QoS)
• Acceso fácil y continuado al servicio
• Tiempos de respuesta adecuados y predecibles
• Minimizar costes para aumentar la competitividad
• Reducir el coste IT imputable a cada transacción para ofrecer mejores
precios que la competencia.
15
16. Calidad de servicio al usuario
Reliability, Availability, Scalability y Performance “RASP”
• Disponibilidad
• Mantener el servicio a los clientes
• Tolerancia a paradas planificadas y no planificadas.
• Rendimiento
• Elevado Throughput para aplicaciones/servicios
• Latencia baja y predecible
• Escalabilidad
• Expandir el sistema y añadir recursos bajo demanda
• Millones de usuarios y miles de sistemas manteniendo SLAs
• Fiabilidad
• Calidad provada en los entornos más exigentes – “it just works”
• Integridad transaccional, mensajería fiable
16
17. Disponibilidad
Paradas planificadas
Actualización de Aplicaciones
Hot redeployment
Side By Side Deployment
Operations &Solutions Configuración
Cambios
Actualización
del servidor Dynamic changes
Rolling cluster upgrade
17
18. Disponibilidad
Paradas no planificadas
Error de Software
Clusters
Service Migration
Failures & Solutions
Clusters
Fallo de Server & Service Migration
Hardware
18
19. Rendimiento
JRockit VM
• Máquina virtual propia con alto rendimiento
SPECjbb2005 - Quad core Intel Xeon X5355
250000
+64% +91%
SPECjbb2005 bops
200000
Sun JVM (base)
150000 Sun JVM (tuned)
100000 JRockit (base)
JRockit (tuned)
50000
0
32-bit JVM 64-bit JVM
Note: The percentage comparison is compared to the baseline (Sun JVM base). Relative performance varies with workload.
19
20. Rendimiento
JRockit Real Time
Traditional Java JRockit Real Time
120
105
90
75
60
45
30
15
0
0 2000 4000 6000 8000 10000 12000 14000 16000 18000
Poca carga de trabajo: El GCprovoca
timeouts ocasionales
120
105
90
75
60
45
JRRT hace que el GC sea determinístico, permitiendo
30
15
garantizar las SLAs.
0
0 2000 4000 6000 8000 10000 12000 14000 16000 18000
Mucha carga de trabajo: El GC provoca tiempos de
respuesta inacceptables
20
23. Exalogic, rendimiento extremo!!
Hardware y Software diseñados para trabajar juntos
• Rendimiento Java EE
• El rendimiento de las aplicaciones Java
EE mejorado 10X
• Los cimientos del Cloud empresarial
• Virtualización
• Diseñado para consolidación de
aplicaciones
• Sistema completo
• Reducción de costes de despliegue y
operación
23
24. Escalabilidad
Clusterización
Máquina 1 Máquina 2
• Distintos tipos de configuración
• Activo-pasivo
• Activo-activo
• Repartición de la carga
• Alta disponibilidad (activo-activo con réplica de sesiones)
24
25. Escalabilidad
Oracle Coherence
In-memory grid de datos
Características
• Consultas paralelas de datos mediante el uso de filtros
• Procesamiento de transacciones basado en Grid para una mayor
producción.
• Caché de escritura retrasada (write-behind) para incorporar las escrituras
en las fuentes de datos de back-end (fuentes de datos lentas)
Beneficios
• Acceso rápido y confiable a los datos de aplicaciones (tiempo constante)
• Procesamiento de eventos y análisis de datos en memoria
• Menos carga en las fuentes de datos compartidas
• Escalamiento horizontal optimizado en commodity hardware
25
26. Fiabilidad al máximo nivel
Primary of Backup of
Object XYZ Object XYZ
• Los datos se mantienen replicados y repartidos entre los nodos
• Consultas y actualizaciones constantes
• Siempre se mantendrá una réplica (protección contra caídas).
• Distribución de la carga uniforme en los nodos
• Los servidores se pueden añadir de forma dinámica para escalar el
sistema.
26
27. Escalabilidad
Oracle Coherence Data Grid
Ever Expanding
Universe of Users
• Oracle Coherence
Web Servers
proporciona datos 101100010110010111011001011001011100011101111110001110
bajo demanda Application 10110001011001011101100101100101110001110
Servers
• Permite escalar el Data Demand
Grid de middleware
con hardware de
bajo coste
Java Objects
Data Supply
Data Sources
27
31. Minimización de costes
Total Cost of Ownership (TCO)
• El coste global de un servidor de aplicaciones está formado por:
• Costes de licenciamiento (inicial + soporte anual)
• Costes operacionales (tareas + riesgos asociados):
• Instalación
• Configuración
• Administración
• Monitorización
• Tuning
• Tiempos sin servicio (planificados o no)
• La suma de todos estos costes nos da el coste global de propiedad o
TCO.
31
32. Reducción de costes operacionales
Aportaciones de WebLogic
• Administración unificada
• Automatización de tareas (reducción de errores)
• Migración automática de servidores (minimización paradas)
• Diagnósticos Java integrados
• Plantillas de dominios (facilidad de instalación)
• Gestión de parches y dependencias.
32
33. Administración de WebLogic Server
Two flavours: Consola de Administración /Scripting
• Administration Console
• Consola Web para realizar las tareas de administración
• Tipos de usuarios y roles predefinidos
• Extensible mediante estándares (JSR-168, WSRP, …)
• Gestión transaccional de los cambios de configuración
• WebLogic Scripting Tool (WLST)
• Herramienta de scripting para automatizar tareas
• Permite realizar las tareas de administración
• Extensible mediante estándares (Jython)
• Múltiples modos (online/offline, interactive/scripted)
33
35. Automatización de tareas
WebLogic Scripting Tool (WLST)
• Herramienta de scripting para
mantenimiento y configuración
de instancias, clusters y dominios
• Basado en una implementación
100% Java de Python
• Modos de funcionamiento –
(script / interactive) ↔ (online /
offline)
• Proporciona un proceso
repetitivo para propagar cambios
de configuración a través de
múltiples entornos.
• Permite migrar y replicar
entornos rápidamente
35
36. Enterprise Manager
Administración/Monitorización integrada de productos
• Gestionar múltiples granjas y dominios de
weblogic
• Monitorizar rendimiento y disponibilidad de
las aplicaciones desplegadas en el
middleware
• Obtener a tiempo real, métricas del
funcionamiento de la JVM
• Monitorizar Oracle Coherence Cluster
• Detectar cambios de configuración a tiempo
real y realizar un
• Asegurar el cumplimiento de estándares
• Provisión y parcheo de middleware y SO
36
37. Diagnósticos Java Integrados
Diagnosticar aplicaciones en producción con un impacto mínimo
• Diagnósticos en Real-time e
históricos
• Monitorización continua con
mínimo overhead
• No es instrusivo, no es necasario
conocer la aplicación
• Arrancar/Parar sin parar el
servidor
• Diagnotica aplicaciones en
cualquier servidor Java
• Identifica tiempos de espera en el
mid-tier resources
• Analiza desde sesiones de DB a
threads Java.
37