Documente Academic
Documente Profesional
Documente Cultură
Agenda
Introduccin
Grid Computing y HA.
Prdidas de Servicio
Tipos de Prdidas de Servicio y soluciones.
Introduccin
Uso coordinado de muchos servidores pequeos actuando como un gran ordenador. Permite reducir el TCO y mejorar la QoS.
Estandarizacin de la plataforma HW Plataformas HW de bajo coste Escalabilidad y Alta Disponibilidad a un coste reducido Estandarizacin del manteniemiento
Ejemplo: Diciembre
Gestin de pedidos llega a su pico de carga Aplicacin financiera en bajo uso de capacidad Pedidos Contabilidad
Ejemplo: Enero
Gestin de pedidos pasa a carga baja Aplicacin financiera en pico de carga por cierre del ao Pedidos Contabilidad
Ejemplo: Consolidando
Balance de carga para optimizar los recursos en ambos picos de carga Pedidos y Contabilidad
Autenticacin
Collaboracin
Comunicacin
Beneficios
Mejora de la calidad de servicio.
Rendimiento. Escalabilidad, capacidad bajo demanda. Alta disponibilidad.
plsql
Clustering
Capa de Presentacin (servlet/jsps) OC4J Servidores Web (OHS) Balanceadores de Carga o Content Cache (Webcache)
plsql
plsql
Puntos crticos
Optimizacin del Cdigo. Balanceo de Carga.
Deteccin de cadas. Re-arranque de componentes. Protocolos de balanceo de carga. Tiene un impacto importante en el rendimiento de la red, en la capacidad de recuperarse de fallos y en la de evitarlos..
Replicacin de sesin.
Afecta al rendimiento del HW y de la red y a la capacidad de mantener sesin.
Usuarios Externos
Usuarios Internos
Servidores Web
Web Cache HTTP Servers
OPM N
Servidores de Aplicaciones
PM
Internet Router
OC4J Instances
PM
Transaccional RAC Database
OPM N
Servidores Web
Web Cache HTTP Servers wireless& Mobile
Servidores de Aplicaciones
OC4J Instances
Directory Servers
OID DIP
Cluster
Client Tier
Balanceo de Carga
Componentes
Webcache y Servidores Http
3 5
Contenedor Java/J2EE - HA
Stateless Replicacin, Balanceo de carga, deteccin de cadas y re-arranque automtico. rbol JNDI Capa de Presentacin (Servlet, JSP) Stateful Capa de Negocio (EJB)
Replicacin de sesin.
Polticas de Replicacin
Definen cuando se replican los atributos y las variables. Cuando la replicacin es demasiado frecuente produce prdidas de rendimiento en la red y los servidores. Si la replicacin es muy poco frecuente puede producir prdidas de datos. Posibilidad de persistir la sesin en base de datos.
A-C
D-M
N-T
U-Z
Usuarios
No hay un punto nico de fallo
he Shared Cac
Storage Area Network
Hub o Switch
Subsistema de Discos
Data source- HA
Enlazar las bases de datos en Grid con el servidor de aplicaciones en Grid
ONS
ONS
OracleAS Cluster
OracleDB RAC
Prdidas de Servicio
Paradas
Paradas no planificadas
Tipos de Clusters
Oracle Application Server Clusters Escalabilidad Coste de Operacin Coste de Licencias Alta Disponibilidad Instalacin N servidores de aplicacin trabajando en paralelo. Gestionar un Cluster. Licencia por CPUs Generalmente es ms transparente al usuario. Es necesario instalar N servidores de aplicaciones. Se instala 1 servidor de aplicaciones y se clona. Oracle Applicacion Server Cold Failover Clusters 1 servidor de aplicaciones atiende las peticiones. Gestionar un servidor de aplicaciones. Licencia por CPUs activas.
Seleccin Arquitectura
Instancias Redundantes Bsico Activo - Pasivo Activo Activo Bsico Activo Activo Activo - Pasivo Activo Activo (MT) Bsico (Infra) Activo Activo (MT) Activo - Activo (Infra) Recuperacin de Desastres
Un Ejemplo Real
MundoSenior, MundoRed
Factores de Cambio
Se decide reemplazar el sistema informtico no propio y adaptado tras 12 aos. Acceso a todas las agencias de viajes. Tener el inventario en sus propios servidores. Aplicacin desarrollada para su negocio.
Particularidades funcionales. Picos de carga.
Actualizacin tecnolgica.
Escuchar al cliente
necesitbamos un sistema muy estable, robusto y redundante, ya que nuestros servicios han de ser capaces de arrancar a las 9:00 horas de la maana, desde que se ponen a la venta las plazas. Se debe pensar que a partir de esa hora, en los primeros 15 segundos todas las agencias de viajes necesitan realizar una reserva. A partir de ah, y en la primera media hora, el sistema debe funcionar a un ritmo de diez reservas cerradas y con emisin de documentacin por segundo.
Alta Disponibilidad.
Evitar tener punto nicos de fallo. Redundar todos los componentes de la plataforma.
Escalabilidad.
Crecimiento del negocio, nuevas lneas de productos.
Flexibilidad.
El entorno presenta picos de carga muy pronunciados. Nuevas lneas de negocio.
Seleccin Arquitectura
Instancias Redundantes Bsico Activo - Pasivo Activo Activo Bsico Activo Activo Activo - Pasivo Activo Activo (MT) Bsico (Infra) Activo Activo (MT) Activo - Activo (Infra) Recuperacin de Desastres
Participacin de Oracle
Proyecto liderado por Brjula Funciones Consultivas
Definicin de la Arquitectura Monitorizacin y optimizacin del aplicativo
Problemas de Rendimiento
public class CreaReservaSessionEJB implements SessionBean{ public Object[] reserva(....) 1. validateRestriccionesPasajeros 2. actualizaAllCupoSalidaVOs 3. actualizaAllCupoSalidaVOs Debera ejecutarse 10 veces por segundo!!! En los primeros tests algunas veces llegaba a tardar 3 segundos en ejecutarse.
Resultados
13 Reservas por segundo!!!! 22,000 reservas (51,000 plazas) en media hora!!! Media de sesiones conectadas al sistemas 6,500 Incremento de 1,000 puntos de venta. 100% Internet, sin instalaciones. Sistema ms gil y flexible.
Conclusiones
Rendimiento y HA
Muchos problemas de rendimiento se deben a la programacin o diseo de los datos (Java, SQL ,...). La regla de Oro es evitar un punto de fallo nico. Analizar las polticas de replicacin de sesin y balanceo de carga. La HA tiene un coste econmico directo. Las pruebas son fundamentales, debera hacerlas un equipo independiente. El equipo humano es fundamental!!!!
Quien me va a dar soporte a esta tecnologa?