Resumen:
El presente trabajo tiene el objetivo de identificar por medio de un análisis comparativo, las arquitecturas y lenguajes más apropiados para el desarrollo de sistemas distribuidos; también diseñar e implementar un prototipo de un modelo de distribución de documentos, que trabaje en el ambiente de Internet, permitiendo plasmar parte de las investigaciones realizadas y aportar una solución particular a la distribución de objetos. Se realiza una comparación de arquitecturas y lenguajes para determinar las principales características que cada uno posee para desarrollar sistemas distribuidos, considerando las necesidades actuales en cuanto a seguridad, facilidades de implementación, manejo de objetos remotos, multiplataforma y tipo de comunicación en Redes de Área Amplia y especialmente en Internet. El análisis entre diferentes arquitecturas o entorno s de programación incluye a JDK, CORBA y DCOM que han sido identificados como algunos de los más adecuados para la implementación de sistemas distribuidos, debido a que poseen la capacidad de integrar usuarios dispersos geográficamente, con diferentes equipamientos, a través de plataformas robustas y flexibles de desarrollo. Como conclusión sobre las arquitecturas analizadas podemos decir que en general presentan funcionalidades similares para la implementación de sistemas distribuidos. Las diferencias conceptuales se basan en que tanto CORBA como DCOM integran elementos heterogéneos de software, mientras que RMI-JDK tiene funciones de conectividad y recursos compartidos por medio de un lenguaje nuevo y propietario llamado Java. También se realiza una comparación entre los lenguajes de programación Java y C++ en cuanto a sus características más importantes, considerando que estos son dos de los lenguajes más utilizados en la actualidad para implementaciones en Internet. De la comparación de los lenguajes podemos concluir que C++ ejecuta los programas en un tiempo considerablemente menor. Java en tanto, tiene un mejor manejo de la memoria y presenta como uno de los puntos más destacados, la filosofía "write one, run anywhere", lo que implica que un programa compilado puede ejecutar en cualquier ordenador que posea la máquina virtual de Java. El diseño del sistema distribuido a implementar corresponde al modelo del Sistema de Distribución de Objetos (ODS) [RNL 97]. El Sistema de Distribución de Objetos utiliza los recursos ya existentes en Internet e intenta optimizar su uso a partir de la implementación de redes de ruteo y redes de distribución, para hacer que los objetos estén disponibles para los usuarios cuando estos los necesiten. ODS define el acceso a copias locales de los objetos del sistema en vez acceder al lugar de origen cada vez que se necesita un objeto y además, hace que este esté disponible localmente en forma transparente para el usuario. Las características más relevantes que se identificaron para el desarrollo de este sistema son: base de datos independiente del lenguaje de programación, lenguaje portable para poder ejecutarse en diferentes sistemas operativos, posibilidad de implementar esquemas de seguridad y manejo de diferentes tipos de comunicaciones. Como resultado de las diferentes comparaciones y análisis de arquitecturas y lenguajes, se selecciona el lenguaje Java bajo el entorno de desarrollo JDK para implementar el prototipo, con el objetivo de verificar en forma práctica las características de Java y JDK Y comprobar si el sistema distribuido planteado es una buena solución para proveer a usuarios finales de objetos que se encuentran distribuidos en la red. Se implementó el Agente de Servicio que es el componente básico del Sistema de Distribución de Objetos y el Agente de Usuario como front end de acceso para interactuar con el sistema. Se limitó la distribución de objetos en general a la distribución de documentos, utilizando un sistema de publicación en el cual cada autor puede editar publicaciones en los temas de interés en los cuales está autorizado. La administración del sistema se realiza en forma centralizada en los Agentes de Servicio. Se establecieron dos tipos de conexión, una punto a punto para los casos en que se necesita garantizar la comunicación y otra utilizando datagramas donde no es imprescindible una conexión fiable. El Agente de Servicio tiene como objetivo el ingreso y transmisión de documentos a través de la red en forma transparente para los usuarios. Está desarrollado en diferentes módulos independientes pero relacionados y complementarios funcionalmente dándole al sistema mayor flexibilidad y robustez. El Agente de Usuario es la interfase que le permite a quién utiliza el sistema realizar operaciones sobre los documentos. Se comunica con el Agente de Servicio sin que el usuario necesite conocer donde reside, logrando así transparencia de localización. Las operaciones sobre los documentos, tales como altas, bajas, modificaciones y consultas, dependen del perfil que tenga asignado el usuario. Los objetos que maneja el sistema constan de dos partes fundamentales, la primera corresponde a la meta información, que contiene atributos propios del objeto necesarios para su administración e información resumida del documento. La segunda parte es el documento propiamente dicho, es decir, el contenido de las publicaciones. A modo de conclusión sobre el diseño e implementación del prototipo podemos decir que cubrió satisfactoriamente nuestras expectativas. Podemos comprobar que el sistema es adecuado para transmitir objetos sin un alto grado de actualización, tales como documentos en general, aportando además a la optimización del tráfico en la red dado que se accede a copias locales de los mismos. Con respecto al desarrollo técnico podemos mencionar la posibilidad de ejecutar el código generado en diferentes plataformas y el acierto de haber utilizado un modelo cliente-servidor, que nos permite intercambiar componentes de software en forma fácil y flexible. Los beneficios de haber elegido Java como lenguaje de programación fueron capitalizados a través de programas con menos líneas de código, manejo automático de memoria, facilidad en la administración de errores y la posibilidad de convertir funciones en applets para ser ejecutados en browser estándares. De las deficiencias encontradas en Java podemos mencionar lentitud en la ejecución, falta de facilidades gráficas propias, entorno nativo de programación DOS y falta de documentación. El haber diseñado e implementado de un sistema de distribución de documentos para Internet, desarrollado enteramente en Java, que hoyes uno de los lenguajes más utilizados, representa uno los logros más importantes que podemos citar. También el conocimiento adquirido en el estudio de las principales alternativas para la implementación de sistemas distribuidos, tanto a nivel de arquitecturas como de lenguajes, nos brinda la posibilidad de poder elegir la solución más adecuada para cada necesidad.
Citación:
---------- APA ----------
Biscotti, Fabián; Ronconi, Leandro. (2000). Desarrollo de sistemas distribuidos en Internet. (Tesis de Grado. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales.). Recuperado de https://hdl.handle.net/20.500.12110/seminario_nCOM000799_BiscottiRonconi
---------- CHICAGO ----------
Biscotti, Fabián; Ronconi, Leandro. "Desarrollo de sistemas distribuidos en Internet". Tesis de Grado, Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales, 2000.https://hdl.handle.net/20.500.12110/seminario_nCOM000799_BiscottiRonconi
Estadísticas:
Descargas mensuales
Total de descargas desde :
https://bibliotecadigital.exactas.uba.ar/download/seminario/seminario_nCOM000799_BiscottiRonconi.pdf
Distrubución geográfica