Download Sistemas Op. en Red y Distribuidos Curso 2003/04 - PoliformaT

Document related concepts
no text concepts found
Transcript
Diseño y Aplicaciones de
Sistemas Distribuidos
Programa de la asignatura
Joan Vila
DISCA / UPV
Departament d’Informàtica de Sistemes i Computadors
Universitat Politècnica de València
DYA de Sistemas Distribuidos

Profesorado

Joan Vila i Carbó
– Catedrático de Universidad
– Área de Arquitectura y Tecnología de Computadores

José Simó Ten
– Profesor Titular de Universidad
– Área de Arquitectura y Tecnología de Computadores
DYA
Diseño Y Aplicaciones de
Sistemas Distribuidos
– Este curso ha sido preparado por:
2
DYA de Sistemas Distribuidos
Objetivos
– Conocer y adquirir destreza en los entornos y herramientas actuales para
desarrollo de aplicaciones distribuidas.

Java, CORBA, XML, SOAP
– Proporcionar la capacidad para el diseño de aplicaciones distribuidas,
describiendo los compromisos más notables.

Escalabilidad, Seguridad, Movilidad de código...
– Conocer las arquitecturas que dan soporte a las aplicaciones distribuidas.

Middleware, Servicios Web
DYA
Diseño Y Aplicaciones de
Sistemas Distribuidos

3
DYA de Sistemas Distribuidos
Programa de teoría
Sesiones
de teoría
– 1.- Introducción / Introducción a Java
2
– 2.- Comunicación (I): del C/S al modelo de objetos
3
– 3.- Comunicación (II): grupos
1
– 4.- Tecnologías web
3
– 5.- Seguridad
2
– 6.- Replicación y caching
1
– Proyecto Final
1
DYA
Diseño Y Aplicaciones de
Sistemas Distribuidos

4
DYA de Sistemas Distribuidos

Contenidos
DYA
Diseño Y Aplicaciones de
Sistemas Distribuidos
Tema
Teoría
Herramientas prácticas
1. Introducción
 Conceptos básicos
 Evolución de las arquitecturas
Java Básico (pr1)
2. Comunicación (i): del
C/S al modelo de objetos
 Comunicación C/S
 RPC’s
 El modelo de objetos distribuido
 Sockets en Java (pr2)
 Java-RMI (pr3)
 CORBA (pr4)
3. Comunicación (ii):
grupos
 Gestión de componentes de un grupo
 Protocolos de difusión
 Sockets multicast (pr5)
4. Tecnología web
 HTTP, HTML, XML
 Estructura de las aplicaciones web.
 CGI’s
 Servicios web
Applets (pr6)
 Servlets (pr7)
 SOAP (pr8)
5. Seguridad
 Criptografía
 Firmas digitales
 Protocolo SSL
 Firmas digitales en Java
y stunnel (pr9)
6. Replicación y caching
 Replicación vs caching
 Seriabilidad vs corrreción
 DNS
5
Programa de prácticas

Parte I: Java y CORBA (5/6 sesiones)
Diseño Y Aplicaciones de
Sistemas Distribuidos
– P1: Hola Java!

– P2: La aplicación echo con sockets

Sockets y Threads
– P3: La aplicación echo con RMI

RMI (2 partes: paso por referencia, paso por valor)
– P4: La aplicación echo con CORBA

Clases CORBA en Java. Servicio de nombres
– P5: Difusión a grupos

DYA
Clases, objetos, interfaces, threads


Sockets multicast. Serialización de objetos
Gestión de grupos
Esqueleto para el proyecto final
6
Programa de prácticas

Parte II: Java y la web (4 sesiones)

Applets
– P7: Un servidor de echo con Servlets

Clases CORBA en Java
– P8: Servicios Web

SOAP, Axis
– P9: Seguridad

Firmas digitales en Java, stunnel
DYA
Diseño Y Aplicaciones de
Sistemas Distribuidos
– P6: Un cliente de echo con Applets
7
Programa de prácticas

Parte III: Proyecto final 1 (4 sesiones)

La agencia de robots
DYA
Diseño Y Aplicaciones de
Sistemas Distribuidos
– Diseño de una aplicación distribuida en Java
8
Programa de prácticas

Parte III: Proyecto final 2 (4 sesiones)
DYA
Diseño Y Aplicaciones de
Sistemas Distribuidos
– Diseño de una aplicación distribuida en Java

Monitor para control de tráfico aéreo
Simulador
de
escenarios
Radar
Procesamiento
Monitor
9
Bibliografia

M. L. Liu
DYA
Diseño Y Aplicaciones de
Sistemas Distribuidos
– Computación Distribuida. Fundamentos y Aplicaciones.
– Pearson/ Addison Wesley

G. Coulouris, J. Dollimore, T. Kindberg
– Distributed Systems. Concepts and Design
– Addison Wesley, 3ª edición.

W. Emmerich
– Enginnering Distributed Objects
– Wiley 2000.

M. Campione, K. Walrath
– The Java Tutorial: Object Oriented Programming for the Internet (Tomo 2)
– Addison Wesley Java Series, 3ª edición.
– http://java.sun.com
10
Software de prácticas

Eclipse IDE for Java EE Developers (162 MB) v3.4
(Ganymede)
Diseño Y Aplicaciones de
Sistemas Distribuidos
– Linux, Windows, Mac OS X
– http://www.eclipse.org

Plugins eclipse
– RMI plugin de Genady

– CORBA plugin ORB Studio 7

http://www.orbzone.com
– VE: Visual Editor

DYA
http://www.genady.net/rmi/v20
http://www.soyatec.org/update/Ganymede/org.eclipse.ve_1.4.0.v20080528.zip
– WTP: Web Tool Platforms (incluido en IDE Java EE)
Axis (SOAP), Jakarta Tomcat, Xerces (parser XML)
– FatJar plugin


http://fjep.sourceforge.net
11
Software de prácticas

Documentación Java de Sun
– Tutorial

Soporte CORBA
– ORBStudio
DYA
Diseño Y Aplicaciones de
Sistemas Distribuidos
– API: JSDK 1.5.x-doc
12
Recursos de la asignatura
 Curso OCW de la asignatura:
DYA
Diseño Y Aplicaciones de
Sistemas Distribuidos
– Los siguientes recursos están disponibles:


Presentación de la asignatura (pdf)
Teoría
– Presentaciones/apuntes (pdf)

Prácticas
– Boletín de prácticas (pdf)
– Enunciados de prácticas en línea (pdf)
– Ficheros de apoyo a las prácticas (zip)

Software y manuales
– Manuales en línea
– Descargas de software
– Enlaces a software
13