Sunteți pe pagina 1din 29

Sistemas Distribuidos

Diego Sevilla Ruiz


DITEC Facultad de Informtica a

Murcia, septiembre de 2007

Diego Sevilla Ruiz Sistemas Distribuidos

DITEC Facultad de Informtica a

Sistemas Distribuidos
CURSO ACADEMICO TITULACION CICLO CREDITOS TEORICOS DEPARTAMENTO 2008/2008 I. INFORMATICA SEGUNDO. CURSO SEGUNDO. CARACTER OPTATIVA 3. PRACTICOS: 3. TOTAL: 6. INGENIER IA Y TECNOLOG IA DE COMPUTADORES Horario Martes 9:30 11:30 ??? Aula B.03 Lab. 1.6

Teor a Prcticas a

Profesor Diego Sevilla Diego Sevilla Tutor as

Mircoles 10:0014:00 e Mircoles 16:0018:00 e


DITEC Facultad de Informtica a

Diego Sevilla Ruiz Sistemas Distribuidos

Temario de Teor a
1. INTRODUCCION

SISTEMAS DISTRIBUIDOS: INTRODUCCION Y CONCEPTOS SISTEMAS DISTRIBUIDOS VERSUS SITEMAS CENTRALIZADOS SISTEMAS OPERATIVOS DISTRIBUIDOS MIDDLEWARE: TIPOS SISTEMAS GRID MODELOS DISTRIBUIDOS DE COMPONENTES INTRODUCCION A LOS OBJETIVOS, PATRONES DE Y HERRAMIENTAS CONCEPTUALES DE LA DISENO ASIGNATURA

Diego Sevilla Ruiz Sistemas Distribuidos

DITEC Facultad de Informtica a

Temario de Teor (ii) a

2. PROGRAMACION EN SISTEMAS DISTRIBUIDOS: CORBA

IPC Y SISTEMAS RPC: SISTEMAS DE OBJETOS DISTRIBUIDOS INTRODUCCION A CORBA EL LENGUAJE IDL EL MAPPING DE IDL A C++ EL MAPPING DE IDL A JAVA CONSTRUCCION DE CLIENTES Y SERVIDORES BASICOS

Diego Sevilla Ruiz Sistemas Distribuidos

DITEC Facultad de Informtica a

Temario de Teor (iii) a

3. SERVICIOS DE INFORMACION EN SISTEMAS DISTRIBUIDOS


SERVICIOS DE NOMBRES SERVICIOS DE TRADING PATRONES: ITERATOR, FEDERATION CORBA NAMING SERVICE CORBA TRADING SERVICE GLOBUS MDS

Diego Sevilla Ruiz Sistemas Distribuidos

DITEC Facultad de Informtica a

Temario de Teor (iv) a

4. PATRONES PARA MEJORAR LA EFICIENCIA,Y ESCALABILIDAD DE ARQUITECTURAS DISTRIBUIDAS

INTRODUCCION

Aspectos espec cos de diseo para aplicaciones distribuidas n Eciencia y escalabilidad en sistemas distribuidos Diseo de interfaces remotas (fat operations, coarse object n models, wrapper) Escalabilidad en el nmero de clientes u Manejo de threads de ejecucin o Patrn Evictor o

PATRONES PARA EFICIENCIA Y ESCALABILIDAD

Diego Sevilla Ruiz Sistemas Distribuidos

DITEC Facultad de Informtica a

Temario de Teor (v) a


5. ASPECTOS AVANZADOS DE SISTEMAS DISTRIBUIDOS

TOLERANCIA A FALLOS BALANCEO DE CARGA TRANSACCIONES SEGURIDAD

6. OTROS PARADIGMAS DE PROGRAMACION E DE APLICACIONES DISTRIBUIDAS INTEGRACION


INTEGRACION DE APLICACIONES CON XML MESSAGE-ORIENTED-MIDDLEWARE (MOM) SERVICIOS WEB ARQUITECTURAS PEER-TO-PEER MODELOS DE COMPONENTES DISTRIBUIDOS CARACTER ISTICAS BASICAS DE LOS SISTEMAS GRID GLOBUS
DITEC Facultad de Informtica a

7. INTRODUCCION A LOS SISTEMAS GRID: GLOBUS


Diego Sevilla Ruiz Sistemas Distribuidos

Prcticas a

Explicacin en las clases de prcticas de las herramientas y las o a prcticas a Dependiendo del nmero de personas: individuales o por u grupos de 2 Utilizando CORBA, servicios Web, J2EE/EJB... Todav por determinar a Parte en Java y parte en C++

Diego Sevilla Ruiz Sistemas Distribuidos

DITEC Facultad de Informtica a

Trabajo a exponer

Opcional Los temas irn saliendo conforme se vaya avanzando en la a teor salgan ideas o discusiones a, Presentacin de 10 minutos concertada o

Diego Sevilla Ruiz Sistemas Distribuidos

DITEC Facultad de Informtica a

Bibliograf bsica (teor y prcticas) a a a a


DEEPAK ALUR, JOHN CRUPI, DAN MALKS, CORE J2EE PATTERNS, 2 EDITION, PRENTICE HALL, 2003, ISBN: 0-13-142246-4. GEORGE COULOURIS, JEAN DOLLIMORE Y TIM KINDBERG, SISTEMAS DISTRIBUIDOS. COCEPTOS Y DISENO. 3a EDICION. Pearson Educacin, o 2001. ISBN: 84-7829-049-4. MARK GRAND, PATTERNS IN JAVA. VOLUME 1, 2a EDICION. WILEY, 2002, ISBN: 0-471-22729-3. ANDREW S. TANENBAUM, SISTEMAS OPERATIVOS DISTRIBUIDOS. Prentice-Hall Hispanoamericana, 1995. ISBN: 968-880-627-7. HENNING, VINOSKI. PROGRAMACION EN CORBA CON C++. Pearson Educacin, 2002, ISBN: 84-7829-048-6. o BROSE, VOGEL, DUDDY. JAVA PROGRAMMING WITH CORBA, 3 EDITION, John Wiley & Sons, 2001. ISBN: 0-471-60695-2. SCHMIDT, STAL, ROHNERT, BUSCHMAN. PATTERN-ORIENTED SOFTWARE ARCHITECTURE. VOLUME 2: PATTERNS FOR CONCURRENT AND NETWORKED OBJECTS. John Wiley & Sons, 2000. ISBN: 0-471-60695-2.
Diego Sevilla Ruiz Sistemas Distribuidos DITEC Facultad de Informtica a

Bibliograf complementara e Internet a

FERNANDO BELLAS. TRANSPARENCIAS SOBRE CORBA Y SISTEMAS DISTRIBUIDOS. UNIVERSIDAD DE A CORUNA. http://www.tic.udc.es/fbellas DOUGLAS C. SCHMIDT. PRESENTACIONES SOBRE PATRONES PARA APLICACIONES DISTRIBUIDAS. http://www.cs.wustl.edu/schmidt BUSHMAN, MEUNIER, ROHNERT, SOMMERLAD, STAL. PATTERN-ORIENTED SOFTWARE ARCHITECTURE. VOLUME 1: A SYSTEM OF PATTERNS. John Wiley & Sons, 1996. ISBN: 0-471-95869-7. MICHAEL STAL. TRANSPARENCIAS DE PATRONES DE APLICACIONES DISTRIBUIDAS. http://www.stal.de MICHAEL RUMBAUGH, IVAR JACOBSON, GRADY BOOCH, EL LENGUAJE UNIFICADO DE MODELADO. ADDISON WESLEY, 1999, ISBN: 84-7829-028-1.

Diego Sevilla Ruiz Sistemas Distribuidos

DITEC Facultad de Informtica a

Evaluacin o

Examen de preguntas cortas: 20 % (hay que superar el 50 % para aprobar) Prctica: 60 % a Presentacin opcional: 20 % o Trabajos prcticos especiales: Prctica + Presentacin a a o

Diego Sevilla Ruiz Sistemas Distribuidos

DITEC Facultad de Informtica a

Web de la asignatura
http://www.ditec.um.es/ssdd/

Diego Sevilla Ruiz Sistemas Distribuidos

DITEC Facultad de Informtica a

Sistemas Distribuidos

Un sistema distribuido es aquel en el que los componentes localizados en computadores, conectados en red, comunican y coordinan sus acciones unicamente mediante el paso de mensajes. [Colouris, p.1].

Concurrencia de los componentes Carencia de un reloj global Fallos independientes

Diego Sevilla Ruiz Sistemas Distribuidos

DITEC Facultad de Informtica a

Sistemas Operativos Distribuidos


Sistemas Distribuidos versus Sistemas Operativos Distribuidos? Polmica hace unos aos e n Principales diferencias:

Heterogeneidad (hw, so., etc.) Sistema dbilmente acoplado vs. Sistema fuertemente acoplado e

Inmaduros en su comienzo Ahora ser el momento de avanzar en la direccin a o


GNU/Hurd CODA

Diego Sevilla Ruiz Sistemas Distribuidos

DITEC Facultad de Informtica a

Curiosidad...
http://www.oreilly.com/catalog/opensources/book/appa.html
From: ast@cs.vu.nl (Andy Tanenbaum) Newsgroups: comp.os.minix Subject: LINUX is obsolete Date: 29 Jan 92 12:12:50 GMT ... As most of you know, for me MINIX is a hobby... As a result of my occupation, I think I know a bit about where operating are going in the next decade or so... monolithic vs. microkernel... From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds) Subject: Re: LINUX is obsolete Date: 29 Jan 92 23:14:26 GMT your job is being a professor and researcher: Thats one hell of a good excuse for some of the brain-damages of minix. I can only hope (and assume) that Amoeba doesnt suck like minix does.

Diego Sevilla Ruiz Sistemas Distribuidos

DITEC Facultad de Informtica a

Retos

Heterogeneidad

Redes Hardware Sistemas Operativos Middleware

Extensibilidad Seguridad Escalabilidad Tratamiento de Fallos Concurrencia Transparencia


DITEC Facultad de Informtica a

Diego Sevilla Ruiz Sistemas Distribuidos

Curso de SSDD tradicional


Transacciones Relojes y coordinacin o Seguridad Replicacin o Tolerancia a fallos Balanceo de carga Tpicos avanzados o

Multimedia High Availability Real-time y sistemas empotrados

Diego Sevilla Ruiz Sistemas Distribuidos

DITEC Facultad de Informtica a

Primeras reexiones

Servicio de nombres bsico: a

struct Name { string name; Object obj; }; interface NameService { Name getName(in string name); Handle startIteration(); Name nextElement(in Handle h); void endIteration(in Handle h); };
Diego Sevilla Ruiz Sistemas Distribuidos DITEC Facultad de Informtica a

Primeras reexiones (ii)

Aumentar la granularidad, entonces

typedef sequence<Name> NameSeq; interface NameService { NameSeq getNames(void); };

Diego Sevilla Ruiz Sistemas Distribuidos

DITEC Facultad de Informtica a

Primeras reexiones (iii)

A wiser solution

typedef sequence<Name> NameSeq; interface NameIterator { NameSeq nextSeq(inout long n); }; interface NameService { NameIterator getNameIterator(); };
Diego Sevilla Ruiz Sistemas Distribuidos DITEC Facultad de Informtica a

Sitios Web

Steve Vinoski http://www.iona.com/blogs/vinoski/


Diego Sevilla Ruiz Sistemas Distribuidos DITEC Facultad de Informtica a

Sitios Web (ii)

Stefan Tilkov http://www.innoq.com/blog/st/


Diego Sevilla Ruiz Sistemas Distribuidos DITEC Facultad de Informtica a

Sitios Web (iii)

Martin Fowler http://martinfowler.com/bliki/


Diego Sevilla Ruiz Sistemas Distribuidos DITEC Facultad de Informtica a

Sitios Web (iv)

Paul Graham http://www.paulgraham.com/


Diego Sevilla Ruiz Sistemas Distribuidos DITEC Facultad de Informtica a

Sitios Web (v)

Eric Newcomer http://www.iona.com/blogs/newcomer/


Diego Sevilla Ruiz Sistemas Distribuidos DITEC Facultad de Informtica a

Sitios Web (vi)

The Daily WTF http://thedailywtf.com/


Diego Sevilla Ruiz Sistemas Distribuidos DITEC Facultad de Informtica a

WTF

Diego Sevilla Ruiz Sistemas Distribuidos

DITEC Facultad de Informtica a

WTF(ii)
// calculate total num. of measures int numMeasures = 0; Dicos_debugInfo("scanDataList %d.", pmData.scanDataList.length()); for (unsigned int i=0;i<pmData.scanDataList.length();i++) { Dicos_debugInfo("numMeasures %d.", pmData.scanDataList[i].numMeasures); for (int j=0;j<pmData.scanDataList[i].numMeasures;j++) { numMeasures++; } }
Diego Sevilla Ruiz Sistemas Distribuidos DITEC Facultad de Informtica a

S-ar putea să vă placă și