entorno de desarrollo de heurísticas distribuidas utilizando osgi
TRANSCRIPT
![Page 1: Entorno de desarrollo de heurísticas distribuidas utilizando OSGi](https://reader033.vdocuments.co/reader033/viewer/2022060202/559b81571a28ab09768b47b1/html5/thumbnails/1.jpg)
Entorno de desarrollo de heurísticas distribuidas utilizando OSGi
P García Sánchez, PA Castillo, J González, JJ Merelo1 y A Escámez2
- 1) Dept. de Arquitectura y Tecnología de Computadores- 2) Telefónica I+D
Jornadas de Paralelismo 2009
![Page 2: Entorno de desarrollo de heurísticas distribuidas utilizando OSGi](https://reader033.vdocuments.co/reader033/viewer/2022060202/559b81571a28ab09768b47b1/html5/thumbnails/2.jpg)
2Jornadas de Paralelismo 2009
Índice
Introducción y estado del arte ¿Qué hemos usado?
− Arquitectura Orientada a Servicios− OSGi− R-OSGi
Arquitectura de la plataforma Experimentos Conclusiones y trabajo futuro
![Page 3: Entorno de desarrollo de heurísticas distribuidas utilizando OSGi](https://reader033.vdocuments.co/reader033/viewer/2022060202/559b81571a28ab09768b47b1/html5/thumbnails/3.jpg)
3Jornadas de Paralelismo 2009
Estado del Arte
• Pero si hay un montón de frameworks!– JEO– ECJ– HeuristicLab– MALLBA– ParadiseEO– ... y más!
• Pero ninguno basado en arquitectura de plugins bien definida y aceptada como es OSGi.
![Page 4: Entorno de desarrollo de heurísticas distribuidas utilizando OSGi](https://reader033.vdocuments.co/reader033/viewer/2022060202/559b81571a28ab09768b47b1/html5/thumbnails/4.jpg)
4Jornadas de Paralelismo 2009
OSGi
Modelo de componentes dinámico
Bundle: Jar con el fichero MANIFEST adaptado
Servicio: conecta bundles de manera dinámica
Componente: Clase dentro de un bundle junto con una descripción en XML interpretada en tiempo de ejecución->Servicios Declarativos
![Page 5: Entorno de desarrollo de heurísticas distribuidas utilizando OSGi](https://reader033.vdocuments.co/reader033/viewer/2022060202/559b81571a28ab09768b47b1/html5/thumbnails/5.jpg)
5Jornadas de Paralelismo 2009
Ejemplo de MANIFEST.MF
![Page 6: Entorno de desarrollo de heurísticas distribuidas utilizando OSGi](https://reader033.vdocuments.co/reader033/viewer/2022060202/559b81571a28ab09768b47b1/html5/thumbnails/6.jpg)
6Jornadas de Paralelismo 2009
Ejemplo de descripción de servicio
![Page 7: Entorno de desarrollo de heurísticas distribuidas utilizando OSGi](https://reader033.vdocuments.co/reader033/viewer/2022060202/559b81571a28ab09768b47b1/html5/thumbnails/7.jpg)
7Jornadas de Paralelismo 2009
R-OSGi
Problema de OSGi: imposibilidad de invocar servicios remotos– Uso de conectores basados en UPnP y Jini:
INVASIVOS R-OSGi es un midleware para distribuir de
forma transparente servicios en red Crea proxies que actúan como bundles
normales que se encargan de comunicar con otros bundles distribuidos
![Page 8: Entorno de desarrollo de heurísticas distribuidas utilizando OSGi](https://reader033.vdocuments.co/reader033/viewer/2022060202/559b81571a28ab09768b47b1/html5/thumbnails/8.jpg)
8Jornadas de Paralelismo 2009
OSGiLiath
Acrónimo un poco friki de “OSGi Laboratory for Implementation and Testing of Heuristics”
Framework de desarrollo de heurísticas no centrado en ningún paradigma concreto y basado en plug-ins
Usa:– Interfaz sencilla– Programación orientada a componentes– Activación dinámica de componentes– Servicios declarativos
![Page 9: Entorno de desarrollo de heurísticas distribuidas utilizando OSGi](https://reader033.vdocuments.co/reader033/viewer/2022060202/559b81571a28ab09768b47b1/html5/thumbnails/9.jpg)
9Jornadas de Paralelismo 2009
Capas
• Interfaz:– Interfaces para:
• Algoritmo• Algoritmo distribuido• Solución• Problema• Datos de entrada• Parámetros
• Heurística– Implementación de la heurística
• Problema:– Implementación del problema
![Page 10: Entorno de desarrollo de heurísticas distribuidas utilizando OSGi](https://reader033.vdocuments.co/reader033/viewer/2022060202/559b81571a28ab09768b47b1/html5/thumbnails/10.jpg)
10Jornadas de Paralelismo 2009
Ejemplo de desarrollo con OSGiLiath
![Page 11: Entorno de desarrollo de heurísticas distribuidas utilizando OSGi](https://reader033.vdocuments.co/reader033/viewer/2022060202/559b81571a28ab09768b47b1/html5/thumbnails/11.jpg)
11Jornadas de Paralelismo 2009
Experimentos
![Page 12: Entorno de desarrollo de heurísticas distribuidas utilizando OSGi](https://reader033.vdocuments.co/reader033/viewer/2022060202/559b81571a28ab09768b47b1/html5/thumbnails/12.jpg)
12Jornadas de Paralelismo 2009
Y unas gráficas...
![Page 13: Entorno de desarrollo de heurísticas distribuidas utilizando OSGi](https://reader033.vdocuments.co/reader033/viewer/2022060202/559b81571a28ab09768b47b1/html5/thumbnails/13.jpg)
13Jornadas de Paralelismo 2009
Conclusiones y trabajo futuro
• Entorno de desarrollo de algoritmos distribuidos basado en plug-ins bien definidos.– Servicios declarativos– Gestión del ciclo de vida dinámicamente– Abstracción de paquetes– Software Libre!
• OSGi se usa en el MundoReal (tm)!
• En el futuro se nos ocurre:– Crear una interfaz gráfica autogenerada– Estudiar otros protocolos de comunicación– Añadir algoritmos y problemas a la librería (el siguiente paso
son los AGs) – Usar la gestión de eventos de OSGi y la gestión dinámica de
manera más profunda