Carlos A. Olarte BDII. CORBA Una arquitectura para integrar ambientes distribuidos y
|
|
- Aarón Crespo Maldonado
- hace 6 años
- Vistas:
Transcripción
1 CORBA Una arquitectura para integrar ambientes distribuidos y heterogéneos Carlos A. Olarte (carlosolarte@puj.edu.co) BDII
2 Contenido 1 Introducción 2 Arquitectura OMA 3 CORBA 4 Object Services 5 Application Object 6 Ejemplo
3 Motivación Un proveedor le ofrece un componente escrito en c++ que implementa cierta funcionalidad y solamente puede ser ejecutado en UNIX. Sus aplicaciones Windows escritas en Java requieren dicha funcionalidad. Como puede integrar ambas aplicaciones?
4 Introducción Complejidad de los sistemas distribuidos Los datos están distribuidos Diferentes lenguajes Diferentes formatos La computación es distribuida Diferentes servidores (Plataforma y S.O) Diferentes clientes (Plataforma y S.O) Los usuarios están distribuidos
5 ...Continuación Ventajas de los sistemas distribuidos Se logra hacer uso de las ventajas de cada proveedor de plataformas Los componentes pueden ser desarrollados por diferentes proveedores Los componentes bien definidos pueden ser reutilizados Desventajas: Se pierde un poco de control La depuración puede llegar a ser muy compleja Sin herramientas adecuadas la gestión y administración puede salirse de las manos
6 Arquitectura OMA Una solución al problema Propuesta por OMG (Object Managment Group) Solución al problema de los ambientes distribuidos Intenta promover un estándar para la comunicación y construcción de componentes distribuidos
7 ORB Canal de comunicación Invocaciones estáticas y dinámicas Transparencia en el lenguaje Transparencia local / remota Sistema autodescribible Seguridad en las transacciones Mensajes polimórficos
8 Object Services Aumento de la funcionalidad del ORB Los servicios incluyen: Collection Query Concurrency Transaction Event Notification Externalization Life Cycle Licensing Naming Property Trading Relationship Security Time
9 Common Facilities Son colecciones de componentes que proveen servicios para la construcción de aplicaciones: Vertical Facilities. Servicios para aplicaciones específicas: Salud Comercio Electrónico Producción, etc Horizontal Facilities. Servicios de propósito general: GUIs Administración de la información Administración del sistema Manejo de tareas (WorkFlow)
10 Application Objects Objetos propios de la aplicación Deben ser componentes bien definidos Deben poder ser reutilizables Deben ser distribuibles Auto describibles
11 Arquitectura de un Sistema CORBA
12 ORB Canal de Comunicación Cuenta con las características del ORB de OMA (transparencia, seguridad, transaccionalidad, etc) CDRs (Common Data Representation) Interoperabilidad entre ORBS gracias a los protocolos IIOP, GIOP y ESIOP Posibilidad de crear puentes entre ORBs y crear federaciones
13 Como se definen componentes?... por medio de IDL (Interface Definition Language): Lenguaje puramente declarativo Debe describir cualquier componente que viva en el ORB Contrato entre el cliente y el servidor Se puede precompilar para generar clases en un lenguaje de alto nivel que implemente el componente
14 Ejemplo module C a l c u l o { e x c e p t i o n DivCero {} ; t y p e d e f sequence <double > DoubleArray ; i n t e r f a c e C a l c u l a d o r a { double suma ( i n double A, i n double B) ; double r e s t a ( i n double A, i n double B) ; double m u l t i p l i c a c i o n ( i n double A, i n double B) double d i v i s i o n ( i n double A, i n double B) r a i s e s ( DivCero ) ; double promedio ( i n DoubleArray D) ; } ; } ;
15 Del lado del Cliente Invocaciones Estáticas Se generan los IDL stubs por medio de un compilador de IDL al lenguaje de implementación Se obtienen referencias a los objetos implementados (servidor) con ayuda del ORB Se realizan las invocaciones como si fueran objeto locales Invocaciones Dinámicas Descubrir los métodos provistos por los objetos (Servidor) Construir una invocación (request) y realizar el llamado a invoke()
16 Del lado del servidor Se generan los esqueletos a partir del IDL Se implementan los componentes (servants) Se instancian los componentes
17 Referencias de los Objetos En CORBA se utilizan IORs (Interoperable Object References) para representar las referencias a los objetos. Con los métodos object to string y string to object se puede generar el IOR para una instancia de un objeto y generar una referencia dado un IOR respectivamente. Ejemplo: IOR: c49444c3a43616c63756c6f2f43616c6...
18 Servicio de Nombres (COSNaming) Además de los métodos object to string y string to object es posible obtener referencias de objetos remotos mediante el servicio de nombres Este servicio organiza los objetos dentro de una jerarquía de contextos Calculadora CObj = new CalculadoraServant ( ) ; org. omg.corba. Object Obj = orb. r e s o l v e i n i t i a l r e f e r e n c e s ( NameService ) ; NamingContext NamingContext = NamingContextHelper. narrow ( Obj ) ; NameComponent ComponentListener = new NameComponent ( Ca l c ul a do r a, ) ; NameComponent p a t h L i s t e n e r [ ] = { C o m p o n e n t L i s t e n e r }; NamingContext. rebind ( pathlistener, CObj ) ; orb = ORB. i n i t (A, n u l l ) ; org. omg.corba. Object r e f = orb. r e s o l v e i n i t i a l r e f e r e n c e s ( NameService ) ; NamingContext n c r e f = NamingContextHelper. narrow ( r e f ) ; NameComponent nc = new NameComponent ( Cal culadora, ) ; NameComponent path [ ] = { nc }; C r e f = C a l c u l a d o r a H e l p e r. narrow ( n c r e f. r e s o l v e ( path ) ) ;
19 Application Object Deben ser reutilizables (bien definidos) Objetos tal cual como se ven en la realidad Definidos por interfaces IDL Interacción transparente con ayuda de los servicios CORBA Flexibles (no atados a un sistema monoĺıtico) Deben ser libres del contexto (utilizables en diferentes situaciones)
20 Modelo de Objetos Bussiness Objects: Encapsulan los datos, reglas del negocio (como reaccionar a eventos) Definen como cambiar su estado Bussiness Process Objects: Encapsulan la lógica del negocio a nivel más general (procesos) Implementan procesos que involucran varios objetos Realizan transacciones Definen como deben cambiar los objetos de acuerdo al entorno Presentation Object: Representación visual de los objetos Comunicación con los Bussiness Object para extraer y modificar datos Algunos no son GUI (interfaces con otros sistemas)
21 Ejemplo idl module C a l c u l o { e x c e p t i o n DivCero {} ; typedef sequence<double > DoubleArray ; i n t e r f a c e C a l c u l a d o r a { d o u b l e suma ( i n d o u b l e A, i n d o u b l e B) ; d o u b l e r e s t a ( i n d o u b l e A, i n d o u b l e B) ; d o u b l e m u l t i p l i c a c i o n ( i n d o u b l e A, i n d o u b l e B) ; d o u b l e d i v i s i o n ( i n d o u b l e A, i n d o u b l e B ) r a i s e s ( DivCero ) ; double promedio ( in DoubleArray D) ; } ; Compilación del IDL // Java i d l j f a l l o l d I m p l B a s e C a l c u l a d o r a. i d l // C ( O r b i t ) orbit i d l 2 skeleton impl Calculadora. i d l
22 Implementación del Servant import Calculo. ; import org. omg.corba. ; public c l a s s C a l c u l a d o r a S e r v a n t extends C a l c u l a d o r a I m p l B a s e { p u b l i c C a l c u l a d o r a S e r v a n t ( ) { } p u b l i c double suma ( double A, double B) { r e t u r n A + B;} p u b l i c double r e s t a ( double A, double B) { r e t u r n A B;} p u b l i c double m u l t i p l i c a c i o n ( double A, double B) { r e t u r n A B;} p u b l i c double d i v i s i o n ( double A, double B ) throws DivCero{ i f (B==0) throw new DivCero ( ) ; r e t u r n A / B; } p u b l i c double promedio ( double A [ ] ) { double avg =0.0; f o r ( i n t i =0; i<a. l e n g t h ; i ++) { avg += A [ i ] ; } r e t u r n avg /A. length ; } }
23 Aplicación Servidor import Calculo. ; import org. omg. CosNaming. ; import org. omg. CosNaming. NamingContextPackage. ; import org. omg.corba. ; import j a v a. u t i l. ; p u b l i c c l a s s S e r v i d o r { p u b l i c S e r v i d o r ( S t r i n g Arg [ ] ) { t r y { // I n i c i a l i z a c i o n d e l ORB ORB orb = ORB. i n i t ( Arg, n u l l ) ; // I n s t a n c i a d e l S e r v a n t Calculadora CObj = new CalculadoraServant ( ) ; // R e g i s t r o en e l s e r v i c i o de nombres org. omg.corba. O b j e c t Obj = orb. r e s o l v e i n i t i a l r e f e r e n c e s ( Name NamingContext NamingContext = NamingContextHelper. narrow ( Obj ) ; NameComponent C o m p o n e n t L i s t e n e r = new NameComponent ( C a l c u l a d o r a NameComponent p a t h L i s t e n e r [ ] = { C o m p o n e n t L i s t e n e r }; NamingContext. rebind ( pathlistener, CObj ) ; System. out. p r i n t l n ( orb. o b j e c t t o s t r i n g ( CObj ) ) ; // C i c l o I n f i n i t o j a v a. l a n g. O b j e c t s y n c = new j a v a. l a n g. O b j e c t ( ) ; s y n c h r o n i z e d ( s y n c ) { s y n c. w a i t ( ) ; } } catch ( E x c e p t i o n E ) { System. out. p r i n t l n ( E r r o r.. [ FAIL ] + E ) ; } } } p u b l i c s t a t i c v o i d main ( S t r i n g A [ ] ) { new S e r v i d o r (A ) ; }
24 Aplicación Cliente import Calculo. ; import org. omg. CosNaming. ; import org. omg.corba. ;... p u b l i c s t a t i c v o i d main ( S t r i n g A [ ] ) { t r y { orb = ORB. i n i t (A, n u l l ) ; org. omg.corba. Object r e f = orb. r e s o l v e i n i t i a l r e f e r e n c e s ( NameService ) ; // óobtencin d e l s e r v i c i o de nombre NamingContext n c r e f = NamingContextHelper. narrow ( r e f ) ; NameComponent nc = new NameComponent ( Calculadora, ) ; NameComponent path [ ] = { nc }; // óobtencin de l a r e f e r e n c i a a l a c a l c u l a d o r a C r e f = C a l c u l a d o r a H e l p e r. narrow ( n c r e f. r e s o l v e ( path ) ) ; // I n v o c a c i o n e s de prueba double ADouble [ ] = new double [ 2 ] ; ADouble [ 0 ] = 5. 3 ; ADouble [ 1 ] = 2. 7 ; System. out. p r i n t l n ( Suma: = + C a l c. suma ( 5. 3, 2. 7 ) ) ; System. out. p r i n t l n ( Resta : = + C a l c. r e s t a ( 5. 3, 2. 7 ) ) ; System. out. p r i n t l n ( Mult : = + C a l c. m u l t i p l i c a c i o n ( 5. 3, 2. 7 ) ) ; System. out. p r i n t l n ( Div : 5. 3 / 2. 7 = + C a l c. d i v i s i o n ( 5. 3, 2. 7 ) ) ; System. out. p r i n t l n ( Promedio : [ ] = + C a l c. promedio ( ADouble ) ) ; System. out. p r i n t l n ( Div0 : 5. 3 / 0. 0 = + C a l c. d i v i s i o n ( 5. 3, 0. 0 ) ) ; } catch ( E x c e p t i o n E){ System. out. p r i n t l n ( E r r o r.. + E ) ; } }
25 Aplicación Cliente (Orbit) s t a t i c CORBA Object c l i e n t i m p o r t s e r v i c e f r o m f i l e ( CORBA ORB orb, char f i l e n a m e, COR CORBA Object obj = NULL ; FILE f i l e = NULL ; i f ( ( f i l e = f o p e n ( f i l e n a m e, r )) == NULL) g e r r o r ( c o u l d not open %s\n, f i l e n a m e ) ; o b j = c l i e n t i m p o r t s e r v i c e f r o m s t r e a m ( orb, f i l e, ev ) ; f c l o s e ( f i l e ) ; r e t u r n obj ; } s t a t i c v o i d c l i e n t r u n ( C a l c u l o C a l c u l a d o r a C a l c, CORBA Environment ev ) { char f i l e b u f f e r [ ] ; p r i n t f ( \nsuma (4.6, 3.5)=% f, C a l c u l o C a l c u l a d o r a s u m a ( Calc, 4. 6, 3. 5, ev ) ) ; p r i n t f ( \nresta (4.6, 3.5)=% f, C a l c u l o C a l c u l a d o r a r e s t a ( Calc, 4. 6, 3. 5, ev ) ) ; i f ( r a i s e d e x c e p t i o n ( ev ) ) r e t u r n ; } } CORBA char f i l e n a m e [ ] = echo. r e f ; Calculo Calculadora Calc = CORBA OBJECT NIL ; CORBA Environment ev [ 1 ] ; CORBA exception init ( ev ) ; c l i e n t i n i t (& argc, argv, & g l o b a l o r b, ev ) ; a b o r t i f e x c e p t i o n ( ev, i n i t f a i l e d ) ; g p r i n t ( Reading s e r v i c e r e f e r e n c e from f i l e \ %s \ \n, f i l e n a m e ) ; C a l c = ( C a l c u l o C a l c u l a d o r a ) c l i e n t i m p o r t s e r v i c e f r o m f i l e ( g l o b a l o r b, echo. r e f, ev a b o r t i f e x c e p t i o n ( ev, i m p o r t s e r v i c e f a i l e d ) ; c l i e n t r u n ( Calc, ev ) ;...
26 Ejecución 1 Servicio de Nombres bash 2.05b$ tnameserv ORBInitialPort 2020 Contexto de ó a s i g n a c i n de nombres i n i c i a l : IOR : T r a n s i e n t N a m e S e r v e r : p u e r t o para r e f e r e n c i a s a o b j i n i c i a l e s en : Instancia del Objeto Calculadora bash 2.05b$ java Servidor ORBInitialPort 2020 C a l c u l a d o r a I n s t a n c i a d a..... [ OK] IOR : c49444c3a... 3 Prueba con el cliente de Java bash 2.05b$ java C l i e n t e ORBInitialPort 2020 Suma : = 8. 0 Resta : = Mult : = Div : 5. 3 / 2. 7 = Promedio : [ ] = 4. 0 E r r o r... C a l c u l o. DivCero : IDL : C a l c u l o / DivCero : 1. 0
27 Contiuación 4 Prueba con el cliente C (Orbit) 1 bash 2.05b$. / C l i e n t e Reading s e r v i c e r e f e r e n c e from f i l e echo. r e f Suma ( 4. 6, 3. 5 ) = Resta ( 4. 6, 3. 5 ) = Prueba del cliente Java desde una máquina remota: bash 2.05b$ java C l i e n t e ORBInitialPort 2020 ORBInitialHost Suma : = 8. 0 Resta : = Mult : = Div : 5. 3 / 2. 7 = Promedio : [ ] = 4. 0 E r r o r... C a l c u l o. DivCero : IDL : C a l c u l o / DivCero : Se debe escribir el IOR en el archivo echo.ref
OMG - CORBA. Object Management Group. Common Object Request Broker (CORBA) http://www.omg.org. http://www.corba.org
OMG - CORBA Object Management Group http://www.omg.org Common Object Request Broker (CORBA) http://www.corba.org OMG - CORBA Objetivo OMG proveer un marco de arquitectura común n para aplicaciones orientadas
Más detallesTecnología de objetos distribuidos y arquitectura de componentes. Índice. Bibliografía. Introducción. Tema V
Bibliografía Tema V Tecnología de objetos distribuidos y arquitectura de componentes. Szyperski, C. 1998. Component Software. Addison-Wesley. Ruiz Cortés, 1998. A. CORBA: Una visión general. http://www.lsi.us.es/~aruiz
Más detallesCORBA desde Java. Diego Sevilla Ruiz Sistemas Distribuidos. 1. Introducción
CORBA desde Java Diego Sevilla Ruiz Sistemas Distribuidos Índice 1. Introducción 1 2. Primeros pasos 1 2.1. Fichero IDL................................... 1 2.2. Cliente......................................
Más detallesCapítulo 1. Componentes de CORBA.
Capítulo 1. Componentes de CORBA. La OMA (Object Management Architecture) define en alto nivel de abstracción las reglas necesarias para la distribución de la computación orientada a objetos (OO) en entornos
Más detallesTEMA 5. Otras arquitecturas distribuidas II. Objetos distribuidos y CORBA
TEMA 5. Otras arquitecturas distribuidas II. Objetos distribuidos y CORBA II. Objetos distribuidos y CORBA 1. Objetos Distribuidos 2. CORBA 1. Características 2. Modelo de trabajo 3. ORB 4. Arquitectura
Más detallesCORBA con Java IDL. Francisco Charte Ojeda ! " !# $ "$ % &'(!!! ) % #* %! " +,',' $! '(! $ - # " "! " '( %!.%# %%! +#! '(!! $!!#
CORBA con Java IDL Francisco Charte Ojeda Sumario " Introducción # $ "$ % &'( ) % #* % " +,',' $ '( $ - # " " " '( %.%# %% +# '( $ # + $ '( '( ) " / % $ $ "'( El compilador idltojava ). * + #)$ '(". #)00"&'(
Más detallesCORBA. Carpe Diem Quam Minimum Credula Postero. Manual de CORBA (Common Object Request Broker Architecture)
Manual de CORBA (Common Object Request Broker Architecture) La arquitectura común de intermediarios en peticiones a objetos (CORBA) es una arquitectura de comunicaciones entre sistemas heterogéneos que
Más detallesPráctica 5: Common Object Request Broker Architecture CORBA
Práctica 5: Common Object Request Broker Architecture CORBA Aplicaciones Telemáticas II Introducción El objetivo de esta práctica es entender mejor el funcionamiento de CORBA (Common Object Request Broker
Más detallesObjetos Distribuidos - Componentes. Middleware
Objetos Distribuidos - Componentes Middleware Middleware Component Oriented Development Arquitecturas 3 Tier Middleware es el software que: conecta y comunica los componentes de una aplicacion distribuida
Más detallesLlamada a métodos remotos (RMI). Curso 04/05. Tema 9. Departament d Informàtica. Universitat de València. 1. Introducción 2
Tema 9 Llamada a métodos remotos (RMI). Departament d Informàtica. Índice 1. Introducción 2 1.1. Cómo funciona RMI?.......................................... 2 2. Usando RMI 4 2.1. Fase de desarrollo:
Más detallesSISTEMAS DISTRIBUIDOS DE REDES 3.- ESTANDAR CORBA. 3.1. Características
SISTEMAS DISTRIBUIDOS DE REDES 3.- ESTANDAR CORBA 3.1. Características La tendencia hacia el futuro es el de lograr la integración total de componentes realizados por terceras partes, para lo cual es necesario
Más detallesIntroducción a Java LSUB. 30 de enero de 2013 GSYC
Introducción a Java LSUB GSYC 30 de enero de 2013 (cc) 2013 Laboratorio de Sistemas, Algunos derechos reservados. Este trabajo se entrega bajo la licencia Creative Commons Reconocimiento - NoComercial
Más detallesSistemas Distribuidos
Sistemas Distribuidos Sesión 3 CORBA: Sistemas de Información Diego Sevilla Ruiz DITEC Facultad de Informática Murcia, 2012 Diego Sevilla Ruiz (DITEC Facultad de Informática) Sistemas Distribuidos Murcia,
Más detallesTecnologías Middleware
Tecnologías Middleware 1 Bibliografía y Evaluación The Essential Distributed Objects Survival Guide R. Orfali, D. Harkey, J. Edwards Wiley, 1996 Seguimiento clases teóricas. Seguimiento prácticas laboratorio.
Más detallesApéndice 1. SOAP 2 2. CORBA 4 3. JMS 6 4. RMI 8
Apéndice A Conectividad 1. OAP 2 2. CORBA 4 3. JM 6 4. RMI 8 OAP OAP (imple Object Access Protocol) es un protocolo basado en XML que permite comunicar componentes y aplicaciones mediante HTTP. Es como
Más detallesPrograma de actualización profesional ACTI.NET Desarrollo de aplicaciones locales y web con tecnología VB.NET
Programa de actualización profesional ACTI.NET Desarrollo de aplicaciones locales y web con tecnología VB.NET OBJETIVOS: Conocer de las bondades del paradigma de orientación a objetos en.net y su lenguaje
Más detallesPrograma de actualización profesional ACTI.NET Desarrollo de aplicaciones locales y web con tecnología VB.NET 2010
Programa de actualización profesional ACTI.NET Desarrollo de aplicaciones locales y web con tecnología VB.NET 2010 OBJETIVOS: Conocer de las bondades del paradigma de orientación a objetos en.net y su
Más detallesCOMPONENTES Y CONTENEDORES. Ingeniería de Software II
COMPONENTES Y CONTENEDORES Ingeniería de Software II Motivación Los componentes son paquetes de software o módulos que encapsulan un conjunto de funciones similares. Estos componentes viven dentro de un
Más detallesModelo de Objetos Distribuidos
Remote Method Invocation Modelo de Objetos Distribuidos Un objeto remoto es un objeto cuyos métodos pueden ser invocados desde otra máquina virtual de java, potencialmente en un host diferente. Modelo
Más detallesArquitectura cliente/servidor
Departamento de Lenguajes y Sistemas Informáticos Arquitectura cliente/servidor Programación en Internet Curso 2004-2005 Índice Introducción Tipos de servidores Ventajas Separación de funciones Modelos
Más detallesCAPITULO 3 ARQUITECTURA DE COMPONENTES GIS EN INTERNET
CAPITULO 3 ARQUITECTURA DE COMPONENTES GIS EN INTERNET 3.1- ARQUITECTURA DE COMPONENTES GIS La presente tesis trata del diseño y desarrollo de una aplicación basado en el Web para servir datos geográficos
Más detallesProgramación Orientada por Objetos
Sistemas Basados en Objetos Distribuidos CORBA: Un caso de Estudio Prof. Mariela Curiel Sept-Dic 2009 Basado en el Capítulo del mismo nombre de Tanenbaum y Van Steen. Programación Orientada por Objetos
Más detallesAplicaciones Distribuidas. Informática III
Aplicaciones Distribuidas Informática III Temario Elementos arquitecturales Arquitecturas tradicionales Arquitecturas Cliente/Servidor Arquitecturas distribuidas Elementos Arquitecturales Componentes de
Más detallesSistemas Distribuidos de Tiempo Real
MASTER EN COMPUTACIÓN Sistemas Distribuidos de Tiempo Real Apuntes: TEMA 6 Por: J. Javier Gutiérrez gutierjj@unican.es http://www.ctr.unican.es/ Grupo de Computadores y Tiempo Real, Universidad de Cantabria
Más detalles5.1 Introducción a las tecnologías de objetos distribuidos con Java RMI
5.1 Introducción a las tecnologías de objetos distribuidos con Java RMI Contenidos Tutorial de Java RMI Caso de estudio: diseño e implementación de la capa modelo de MiniBank con Java RMI Arquitectura
Más detallesINTEROPERABILIDAD ENTRE LOS MARCOS DE GESTION SNMP Y CORBA (GATEWAY)
UNIVERSIDAD CENTROCCIDENTAL LISANDRO ALVARADO DECANATO DE CIENCIA Y TECNOLOGIA MAESTRIA CIENCIA DE LA COMPUTACION MENCION REDES DE COMPUTADORAS INTEROPERABILIDAD ENTRE LOS MARCOS DE GESTION SNMP Y CORBA
Más detallesArquitectura cliente/servidor
Departamento de Lenguajes y Sistemas Informáticos Arquitectura cliente/servidor Programación en Internet Curso 2007-2008 Índice Introducción Tipos de servidores Ventajas Desventajas Arquitectura de una
Más detallesSistemas Distribuidos de Tiempo Real
MASTER EN COMPUTACIÓN Sistemas Distribuidos de Tiempo Real Apuntes: TEMA 4 Por: J. Javier Gutiérrez gutierjj@unican.es http://www.ctr.unican.es/ Grupo de Computadores y Tiempo Real, Universidad de Cantabria
Más detallesArquitecturas Distribuidas Práctica 6. Introducción a CORBA
Arquitecturas Distribuidas Práctica 6. Introducción a CORBA 1. Objetivos Entender el funcionamiento básico de la Llamada a Procedimiento Remoto (LPR). Desarrollar aplicaciones distribuidas sencillas basadas
Más detallesSistemas de Información
Sistemas de Información Tecnologías de Objetos Distribuidos Servicios CORBA Agradecimientos: esta presentación se basa parcialmente en una presentación de Juan Pavón Mestras de la UCM y en una de Jesus
Más detallesCORBA. Hillary Caituiro Monge Departamento de Ingeniería Electrica y de Computadoras hillarycm@hotmail.com. Resumen
CORBA Hillary Caituiro Monge Departamento de Ingeniería Electrica y de Computadoras hillarycm@hotmail.com Resumen CORBA (Common Object Request Broker Architecture) es una especificación propuesta por un
Más detallesservicios. El API es definido al nivel de código fuente y proporciona el nivel de
GLOSARIO API Application Program -ming- Interface Es la interfaz por la cual una aplicación accede al sistema operativo u a otros servicios. El API es definido al nivel de código fuente y proporciona el
Más detalles4 Encuentro Internacional de Computación Aplicada
4 Encuentro Internacional de Computación Aplicada Arquitectura de Objetos Distribuidos utilizando EJBs Omar Gómez omar@cuci.udg.mx Agenda Arquitectura de Objetos Distribuidos Arquitectura J2EE Componentes
Más detallesAPLICACIONES DE INTERNET: SOAP
Grupo de Arquitectura de Computadores, Comunicaciones y Sistemas Desarrollo de Aplicaciones Distribuidas AUTORES: Alejandro Calderón Mateos Javier García Blas David Expósito Singh Laura Prada Camacho Departamento
Más detallesGuía del Curso Analista Programador Java: Business Apps Expert
Guía del Curso Analista Programador Java: Business Apps Expert Modalidad de realización del curso: Número de Horas: Titulación: Online 600 Horas Diploma acreditativo con las horas del curso OBJETIVOS UML
Más detallesTEMA 4: PROGRAMACIÓN DISTRIBUIDA
TEMA 4: PROGRAMACIÓN DISTRIBUIDA!" #!$ %! % & '( '')* (+,( -./0%1' 2%1/../ -3% 450 -(.40( %16 2%1/../ -3% /.0-2%..02%% 7-89:08 1! "!;1 %1499: No existe memoria común Comunicaciones No existe un
Más detallesAgradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1
Prologo Agradecimientos Nota de los autores Índice general I III V VII 1 Problemas, algoritmos y programas 1 1.1 Programas y la actividad de la programación.................... 4 1.2 Lenguajes y modelos
Más detallesPA JOSÉ MANUEL BURBANO CARVAJAL
PA121-01 SISTEMA DE GESTIÓN DEL CONOCIMIENTO PARA LA DEFINICIÓN DE ESTRATEGIAS QUE EVITEN LA DESERCIÓN ESCOLAR EN LOS COLEGIOS DE MOCOA PUTUMAYO EN EL NIVEL DE EDUCACIÓN BÁSICA SECUNDARIA JOSÉ MANUEL BURBANO
Más detallesUnidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones
Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice
Más detallesNómadas (Col) ISSN: 0121-7550 nomadas@ucentral.edu.co Universidad Central Colombia
Nómadas (Col) ISSN: 0121-7550 nomadas@ucentral.edu.co Universidad Central Colombia Martínez Barrera, Crisman TECNOLOGÍA CORBA (Common Object Request Broker Architecture) Nómadas (Col), núm. 17, 2002, pp.
Más detallesCARACTERÍSTICAS DE LOS SGBDOO CARACTERÍSTICAS DE LOS SGBDOO CARACTERÍSTICAS DE LOS SGBDOO CARACTERÍSTICAS DE LOS SGBDOO CARACTERÍSTICAS DE LOS SGBDOO
BASES DE DATOS ORIENTADAS A INTRODUCCIÓN INTRODUCCIÓN.. MODELO DE DATOS ORIENTADO A. COMPLEJOS.. ODL. LENGUAJE DE CONSULTA DE OQL. DISEÑO CONCEPTUAL DE BD DE. ESTÁNDAR CORBA PARA. BD ORIENTADAS A 1 BD
Más detallesInteracción entre Aplicaciones: objetos distribuidos e invocación remota
Interacción entre Aplicaciones: objetos distribuidos e invocación remota En la anterior práctica se ha visto cómo extender la funcionalidad de un servidor web incorporando servlets que atienden peticiones
Más detallesTEMA 5. Otras arquitecturas distribuidas III. Otros entornos de objetos distribuidos
TEMA 5. Otras arquitecturas distribuidas III. Otros entornos de objetos distribuidos III. Otros entornos de objetos distribuidos 1. Problemas de CORBA 2. Java Enterprise Edition 1. EJB 2. Servidor de aplicaciones
Más detallesDIAGRAMAS UML ANDRÉS ESTEBAN MARTÍNEZ HUTA CICLO DE VIDA DEL SOFTWARE GLORIA CECILIA RÍOS MUÑOZ
DIAGRAMAS UML ANDRÉS ESTEBAN MARTÍNEZ HUTA CICLO DE VIDA DEL SOFTWARE 10 GLORIA CECILIA RÍOS MUÑOZ INSTITUCIÓN EDUCATIVA GABRIEL GARCÍA MÁRQUEZ MEDELLÍN 2013 DIAGRAMAS Un diagrama es una representación
Más detallesNotas. Tecnologías de Desarrollo de Sistemas Distribuidos basados en Objetos. Resumen 2. CORBA. 1. Introducción
Notas Tecnologías de Desarrollo de Sistemas Distribuidos basados en Objetos Resumen Debido al auge que se ha venido dando últimamente en el uso de las redes, se ha incrementado el crecimiento de los entornos
Más detallesIntroducción. En este apartado veremos
5.4 Seguridad Introducción En este apartado veremos En qué difiere la programación de un applet frente a una aplicación stand-alone? Problemas de seguridad en applets Uso de CORBA en entornos con firewalls
Más detallesDiseño arquitectónico 1ª edición (2002)
Unidades temáticas de Ingeniería del Software Diseño arquitectónico 1ª edición (2002) Facultad de Informática objetivo Los sistemas grandes se descomponen en subsistemas que suministran un conjunto relacionado
Más detallesJAVA - Serializacíon / RMI. (C) Philippe Roose - 2004, 2005
JAVA - Serializacíon / RMI (C) Philippe Roose - 2004, 2005 Serializar objetos- concepto Desde el JDK 1.1 Serializar objetos permite de escribir un objeto en un fichero como un flujo de octets (archivo
Más detallesCurso LINUX. AREA 1: Intercomunicación
Curso LINUX AREA 1: Intercomunicación Intercomunicación de procesos Introducción Memoria compartida (IPC) Pipes RPC CORBA RMI DCOM SOAP / Web Services Introducción En entornos multiproceso se hace necesario
Más detalles20483 Programación en C#
20483B 20483 Programación en C# Fabricante: Microsoft Grupo: Desarrollo Subgrupo: Microsoft Visual Studio 2012 Formación: Presencial Horas: 25 Introducción Este curso enseña a los desarrolladores las habilidades
Más detallesArquitecturas Distribuidas en Redes Heterogéneas. Prácticas en CORBA
Arquitecturas Distribuidas en Redes Heterogéneas Prácticas en CORBA Curso 2010-2011 Rev-20101028 1. Introducción 1.1. Qué es CORBA? CORBA (Common Object Request Broker Architecture) es un estándar que
Más detallesUNIÓN INTERNACIONAL DE TELECOMUNICACIONES. SERIE Q: CONMUTACIÓN Y SEÑALIZACIÓN Especificaciones del sistema de señalización N.
UNIÓN INTERNACIONAL DE TELECOMUNICACIONES UIT-T Q.812 SECTOR DE NORMALIZACIÓN DE LAS TELECOMUNICACIONES DE LA UIT Enmienda 1 (03/99) SERIE Q: CONMUTACIÓN Y SEÑALIZACIÓN Especificaciones del sistema de
Más detallesPráctica 2: Java Remote Method Invocation (RMI)
Práctica 2: Java Remote Method Invocation (RMI) Aplicaciones Telemáticas II Introducción El objetivo de esta práctica es conocer un poco más sobre el paradigma de objetos remotos. La idea principal es
Más detallesIntroducción Programar es enseñar Iniciación a la programación Finalidad de este libro
Introducción Programar es enseñar Iniciación a la programación Finalidad de este libro 1. Aplicaciones de la programación Paco y sus inmensas hojas de cálculo Irene siente la llamada de Internet El genio
Más detallesDesarrollos CORBA con C++ Builder
Desarrollos CORBA con C++ Builder Francisco Charte Ojeda Sumario! Introducción " # $# %$ &'()%$*+ " ),-. $ ) # %) ' ($ ) &/0 ) # ) $ (! $# Inprise VisiBroker para C++ ( &/0 ) 1.&2 3 4/0 ##)#$ /5 6 &)#
Más detalles2.1 Compuertas para Bases de Datos
1 Colección de Tesis Digitales Universidad de las Américas Puebla Romero Martínez, Modesto Uno de los aspectos mas importantes en un sistema multibase de datos es la forma en como llevar a cabo la comunicación
Más detallesJAVA 7 Los fundamentos del lenguaje Java
Presentación 1. Historia 9 1.1 Por qué Java? 9 1.2 Objetivos del diseño de Java 10 1.3 Auge de Java 11 2. Características de Java 12 2.1 El lenguaje de programación Java 12 2.1.1 Sencillo 13 2.1.2 Orientado
Más detallesInteroperabilidad Cómputo Cliente/Servidor
Middleware r. José Raúl érez Cázares (raul.perez@itesm.mx) ITESM epartamento de Ciencias Computacionales Interoperabilidad Cómputo / S Macintosh ECStation OS/2 MacOS UIX Acceso Remoto Base de datos? WA
Más detallesDesarrollo y servicios web
Desarrollo y servicios web Luisa Fernanda Rincón Pérez 2014-2 Qué vimos la clase pasada? Introducción a Big Data Introducción a bases de datos NOSQL Características bases de datos NOSQL MongoDB como motor
Más detallesComponentes y Middleware. Arquitectura de Software Componentes y Middleware [1] Stakeholders. Sobre el informe. Calidad según los stakeholders
sistema Componentes y Middleware Arquitectura de Software Componentes y Middleware [1] Componentes Middleware Políticas y mecanismos Ejemplo de notación ad-hoc Hernán Astudillo Departamento de Informática
Más detallesArquitectura de Software Componentes y Middleware [1] Componentes y Middleware. Sobre el informe
Arquitectura de Software Componentes y Middleware [1] Hernán Astudillo Departamento de Informática Universidad Técnica Federico Santa María Componentes y Middleware Componentes Middleware
Más detallesServicios web. Jorge Iván Meza Martínez jimezam@gmail.com
Servicios web Jorge Iván Meza Martínez jimezam@gmail.com Especialización en Gestión de Redes de Datos Universidad Nacional de Colombia Sede Manizales 1/71 Contenidos Que es un servicio web. Tecnologías
Más detalles5.1 Introducción a Servicios Web
5.1 Introducción a Servicios Web Introducción Continuando con el ejemplo de intercambio de información de películas... => Actualmente ya no es necesario implementar la solución sugerida a mano Se han estandarizado
Más detallesCORBA: Anexos. Ingeniería del Software II Curso 2009/2010. silarri@unizar.es
CORBA: Anexos Ingeniería del Software II Curso 2009/2010 Sergio Ilarri Artigas Sergio Ilarri Artigas silarri@unizar.es Índice Anexo I: Ejemplo HelloWorld Anexo II: Ejemplo con Objeto callback Anexo III:
Más detallesModelo de los reactores de la tecnología HDHPLUS como componentes de simulación interoperables
Modelo de los reactores de la tecnología HDHPLUS como componentes de Noviembre, 2010 Agenda PDVSA S.A, historia y desarrollo Motivación del proyecto CAPE OPEN Objetivos Beneficios Detalles de la implementación
Más detallesTema 3.1: Introducción a Servicios Web
Tema 3.1: Introducción a Servicios Web Servicios Web (1) La Web proporciona un mecanismo de transporte universal, eficiente, robusto, escalable y probado tanto en aplicaciones inter-organización como intraorganización.
Más detallesSistemas Distribuidos: Migración de Procesos
Sistemas Distribuidos: Migración de Procesos Yudith Cardinale Universidad Central de Venezuela Facultad de Ciencias Postgrado en Computación Octubre 2013 Febrero 2014 Objetivos Entender la importancia
Más detallesIntroducción a Java LSUB. 15 de enero de 2015 GSYC
Introducción a LSUB GSYC 15 de enero de 2015 (cc) 2014 Laboratorio de Sistemas, Algunos derechos reservados. Este trabajo se entrega bajo la licencia Creative Commons Reconocimiento - NoComercial - SinObraDerivada
Más detallesRemote Method Invocation (RMI)
Que deseamos hacer con objetos remotos Remote Method Invocation (RMI) Basado en: Fundamentals of RMI. Short Course. JGuru. Cliente Result = Obj.method1(val1) Servidor Def Obj { int method1(int v) { string
Más detallesDESARROLLO DE UNA APLICACIÓN CLIENTE/SERVIDOR BASADA EN CORBA SISTEMA DE RESERVACIONES DE VUELO PARA UNA AEROLÍNEA
DESARROLLO DE UNA APLICACIÓN CLIENTE/SERVIDOR BASADA EN CORBA SISTEMA DE RESERVACIONES DE VUELO PARA UNA AEROLÍNEA Eric Guagua Alvarado, Ph.D. Sixto García Aguilar Facultad de Ingeniería en Electricidad
Más detallesMIDDLEWARE: Arquitectura para Aplicaciones Distribuidas Dr. Víctor J. Sosa Sosa vjsosa@tamps.cinvestav.mx
MIDDLEWARE: Arquitectura para Aplicaciones Distribuidas Dr. Víctor J. Sosa Sosa vjsosa@tamps.cinvestav.mx Contenido Middleware: Introducción Definición Genealogía Aplicaciones actuales: Servicios Web Computación
Más detallesLenguaje de Programación
Introducción a C/C++() UG Introducción a C/C++() Universidad de Guanajuato Sesión 18 Introducción a C/C++() Qué es un? Un entorno de desarrollo integrado o (acrónimo en inglés de integrated development
Más detallesFRAMEWORK 2 Recepción de SMS
FRAMEWORK 2 Versión 1.1 Área de Integración y Arquitectura de Aplicaciones Hoja de Control Título Documento de Referencia Responsable FW2_MUS_Recepcion_SMS Área de Integración y Arquitectura de Aplicaciones
Más detallesCONTENIDO. Serialización. Carga dinamica de stubs RMI AVANZADO. Callbacks. Carga dinámica de Stubs
CONTENIDO RMI AVANZADO Carga dinamica de stubs Callbacks Carga dinámica de Stubs Para tener acceso a un objeto remoto mediante RMI, el cliente debe recibir un stub serializado y deserializarlo. El stub
Más detallesun Sistema de alquiler de autos usando tecnologia Cliente Servidor con arquitectura CORBA
ESCUELA SUPERIOR POLITECNICA DEL LITORAL Facultad de Ingenieria en Electricidad y Computacih Proyecto de Graduaci6n Analisis, Disefio e Irnplementacion de un Sistema de alquiler de autos usando tecnologia
Más detallesUn. VI. Generador de código intermedio.
Un. VI. Generador de código intermedio. La administración de la memoria se da en esta etapa. Se debe considerar tanto la memoria estática como dinámica, y en esta se utilizan generalmente pilas. Los lenguajes
Más detalleswww.monografias.com Componentes
1. Introducción. 2. COM / DCOM 3. CORBA 4. Common Gateway Interface (CGI) 5. Java en Computación Distribuida 6. Comparación de Arquitecturas 7. Bibliografía www.monografias.com Componentes INTRODUCCIÓN.
Más detallesWeb Services. Richard Rossel rrossel@inf.utfsm.cl. 23 de noviembre de 2004. Web Services
Richard Rossel rrossel@inf.utfsm.cl 23 de noviembre de 2004 JAVA2 TOC s JAVA2 JAVA2 Definición Aplicaciones Autocontenidas y Modulares Basado en estándares (XML,HTTP) Aplicaciones se anuncian por la red
Más detallesProgramación Estructurada
Programación Estructurada PROGRAMACIÓN ESTRUCTURADA 1 Sesión No. 2 Nombre: El lenguaje de programación C Contextualización Una constante en todos los lenguajes de programación (viejos y nuevos) es la implementación
Más detallesDesarrollo de aplicaciones de acceso a base de datos con JBuilder 7
Desarrollo de aplicaciones de acceso a base de datos con JBuilder 7 Este artículo trata sobre el desarrollo de aplicaciones de acceso a base de datos con la herramienta JBuilder7. Tras una breve introducción,
Más detalles3.6 Patrón Factory y objetos persistentes. Políticas del POA asociadas
3.6 Patrón Factory y objetos persistentes. Políticas del POA asociadas Introducción Una factoría es un objeto CORBA que proporciona operaciones para crear otros objetos CORBA Juega un papel similar al
Más detallesen otra máquina exactamente de la misma manera que si se encontrará en la misma máquina
Máquina A Máquina B Máquina C Lo ideal sería tener un sistema distribuido orientado a objetos que permita: 1)Invocar un método de un objeto que se localiza en otra máquina exactamente de la misma manera
Más detallesEspecificación de la secuencia de mensajes que se han de intercambiar. Especificación del formato de los datos en los mensajes.
SISTEMAS DISTRIBUIDOS DE REDES 2.- MODELOS ORIENTADOS A OBJETOS DISTRIBUIDOS 2.1. Tecnologías de sistemas distribuidos Para la implementación de sistemas distribuidos se requiere de tener bien identificados
Más detallesMiddleware. Introducción: capas de middleware
Middleware ] Introducción ] Representación externa de datos y empaquetado ] Protocolos de petición respuesta ] Comunicación en grupo ] Comunicación entre objetos distribuidos ] Llamada a un procedimiento
Más detallesUnidad I: Organización del Computador. Ing. Marglorie Colina
Unidad I: Organización del Computador Ing. Marglorie Colina Arquitectura del Computador Atributos de un sistema que son visibles a un programador (Conjunto de Instrucciones, Cantidad de bits para representar
Más detallesUsando el Sistema Operativo
Sistemas Operativos Pontificia Universidad Javeriana Enero de 2010 Los sistemas operativos Los sistemas operativos Perspectivas del Computador Concepto general El sistema operativo es parte del software
Más detallesEl presente documento describe la importancia que está tomando el cómputo distribuido en
INTRODUCCIÓN El presente documento describe la importancia que está tomando el cómputo distribuido en los sistemas de administración integral o empresarial. Con un prototipo particular, mostraremos como
Más detallesJustificación Cliente/Servidor. Arquitectura Cliente/Servidor. Nuevas Tareas del Dpto. de Sistemas de Información
Tema IV Arquitectura liente/servidor Justificación liente/servidor AVANE TENOLÓGIO EXIGENIAS DE LA EMPRESA ENTORNO GENERAL ANTES Rigidez. No redistribución. Vinculación al sistema. Solapamiento, duplicación
Más detallesTesis de grado de Ingeniería en Informática. Extensión del estándar de para proveer. implementación.
Tesis de grado de Ingeniería en Informática Extensión del estándar de para proveer servicios de estado persistente con acceso remoto: Análisis, diseño e implementación. Buenos Aires, Argentina. Diciembre
Más detallesUniversidad Nacional del Santa FACULTAD DE INGENIERIA E.A.P. Ingeniería de Sistemas e Informática NETBEANS 7.0 MI PRIMER PROYECTO
Universidad Nacional del Santa FACULTAD DE INGENIERIA E.A.P. Ingeniería de Sistemas e Informática NETBEANS 7.0 MI PRIMER PROYECTO El NetBeans es un entorno de desarrollo integrado que permite crear aplicaciones
Más detallesdesarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el
Capitulo II. Análisis de herramientas y tecnologías de desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el lenguaje de Modelo de Objetos llamado UML (Unified
Más detalles5. Modelos de Sistemas Distribuidos
Sistemas Distribuidos 5. Modelos de Sistemas Distribuidos Prof. María Feldgen Curso 2006 Índice Modelos Modelo Cliente-Servidor Framework CORBA Java RMI Microsoft DCOM Message-Oriented Middleware Dificultades
Más detalles4 ARQUITECTURA DE COMUNICACIONES
4 ARQUITECTURA DE COMUNICACIONES Las redes de computadoras son típicamente heterogéneas. Por ejemplo, la red interna de una universidad puede estar hecha de múltiples plataformas. Puede haber un servidor
Más detallesTema 2 Introducción a la Programación en C.
Tema 2 Introducción a la Programación en C. Contenidos 1. Conceptos Básicos 1.1 Definiciones. 1.2 El Proceso de Desarrollo de Software. 2. Lenguajes de Programación. 2.1 Definición y Tipos de Lenguajes
Más detallesBENEMERITA UNIVERSIDAD AUTONOMA DE PUEBLA
BENEMERITA UNIVERSIDAD AUTONOMA DE PUEBLA Facultad de Ciencias de la Computación Programación Distribuida Verano 2007 TAREA 1 Alumnos: Camela Reyes Armando 200211673 Castro Gaona Carlos Ramiro 200412099
Más detallesSERVICIO NACIONAL DE APRENDIZAJE SENA SISTEMA INTEGRADO DE GESTIÓN Procedimiento Ejecución de la Formación Profesional Integral GUÍA DE APRENDIZAJE
Código: F004-P006- GFPI Nº 23 1. IDENTIFICACIÓN DE LA GUIA DE APRENDIZAJE Programa de Formación: Técnico en programación de software Código:228120 Versión: 102 Nombre del Proyecto: SISTEMA DE INFORMACIÓN
Más detallesINTRODUCCIÓN AL PARADIGMA DE LA PROGRAMACIÓN ORIENTADA A OBJETOS CON JAVA
Objetivo: Identificar los concentos principales en java POO, que es una clase, un objeto así como sus características principales abstracción, modularidad, encapsulamiento, herencia, polimorfismo. INTRODUCCIÓN
Más detallesJAVA RMI (REMOTE METHOD INVOCATION)
JAVA RMI (REMOTE METHOD INVOCATION) RMI RMI (Remote Method Invocation) Mecanismo RPC de Mecanismo mediante el cual los procesos cliente y servidor en una aplicación distribuida se comunican Una aplicación
Más detallesMicrosoft Visual Studio está basado en.net framework. Definiciones de.net Framework:
1) CONCEPTO La palabra "Visual" hace referencia al método que se utiliza para crear la interfaz gráfica de usuario (GUI). En lugar de escribir numerosas líneas de código para describir la apariencia y
Más detalles1. Cuántas sentencias hay en la secuencia principal del siguiente programa?
1. Cuántas sentencias hay en la secuencia principal del siguiente programa? public class PruebaSwitch { System.out.print ("Opcion: "); case 3: System.out.println ("miércoles "); A. 1. B. 4. C. Más de 10.
Más detalles