Descargar la presentación
La descarga está en progreso. Por favor, espere
1
Cache Distribuida Ayudante - German Rende
Técnicas de Diseño Cache Distribuida Ayudante - German Rende
2
Presentación del Problema
Cuello de Botella Caída abrupta de la performance del sistema en horas pico Base de Datos 1 Servidor Clientes Concurrentes Front End 4 Servidores Back End 4 Servidores Sistema Granja de Servidores
3
Solución – Cache Distribuida
Base de Datos Cliente Cache Clúster de almacenamiento de la Cache Sistema Nodo Local Nodos Remotos Configuraciones Posibles Local Cache Replicated Cache Optimized Cache Partitioned Cache
4
Tecnologías y Herramientas
Java 1.6 Eclipse / NetBeans Maven PostgreSQL 8.3 Hibernate 3.2.6 Junit Google-Guice Java Remote Method Invocation (RMI)
5
Objetivos de Nuestro Diseño
Minimizar el acoplamiento entre los distintos componentes Permitir la reutilización de componentes Facilidad para modificar la configuración y extender / cambiar funcionalidad Facilidad de probar los componentes en forma aislada
6
Diagrama de Componentes
Destacados Brokering entre nodo y cliente mediante RMI Modelo independiente del protocolo de comunicación
7
Diagrama de Procesos Destacados
Interoperativilidad entre procesos heterogéneos Abstracción de la localización física del cliente, nodos, loggers y storages
8
Diagrama de Despliegue
distribuida Destacados Diseño distribuido para Nodos, Clientes y Loggers Bajo acoplamiento (uso intensivo de interfaces) local
9
Diagrama de Clases – Common
Destacados La clase Item es la unidad de almacenamiento Serialización binaria de los objetos item
10
Diagrama de Clases – Client
Destacados Patrón Factory Patrón Proxy Dependencias a través de interfaces
11
Diagrama de Clases – Node (1)
node-rmi sync Destacados Segregación de interfaces Patrón Factory Patrón Strategy
12
Diagrama de Clases – Node (2)
storage Destacados Patrón Composite Segregación de interfaces Template Methods
13
Diagrama de Clases – Node (3)
garbage collector Cada Listener decide cuando lanzar el Garbage Collector de acuerdo a distintas condiciones storage listener
14
Sincronismo: Cache Local
Nodo 1 Nodo 2 Clúster
15
Sincronismo: Cache Replicada
Item1 Item2 Cache 2 Nodo 1 Nodo 2 Item1 Item2 Clúster
16
Sincronismo: Cache Particionada
Item2 Item1 Cache 1 Item2 Cache 2 Item2 Nodo 1 Nodo 2 Item2 Clúster
17
Sincronismo: Nodos e Items
Clúster
18
Demo
19
¿Preguntas? Muchas Gracias
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.