Sie sind auf Seite 1von 9

Aplicaciones

Distribuidas Abiertas

Usuario;Douglas
UNIVERSIDAD METROPOLITANA ING. SISTEMAS
Contenido
Introducción................................................................................................................................. 2
Desarrollo ..................................................................................................................................... 2
Los Sistemas Distribuidos....................................................................................................... 2
Propiedades de los sistemas distribuidos .............................................................................. 3
Compartición de recursos ................................................................................................... 3
Transparencia en la distribución Un sistema distribuido es transparente si es capaz de
presentarse ante los usuarios y las aplicaciones como si se tratara de una sola computadora.
Pueden describirse diferentes aspectos de la transparencia:.................................................. 4
Fiabilidad y tolerancia a fallos ........................................................................................... 5
Componentes de un sistema distribuido................................................................................ 5
Tipos de Sistemas Distribuidos .............................................................................................. 6
Sistemas distribuidos de cómputo ...................................................................................... 6
Sistemas distribuidos de información ................................................................................ 7
Sistemas distribuidos masivos ............................................................................................ 7
Conclusiones ................................................................................................................................ 8
Introducción

Con el avance de las tecnologías de comunicación hoy en día las aplicaciones de


comunican entre sí, Es una aplicación con distintos componentes que se ejecutan en
entornos separados, normalmente en diferentes plataformas conectadas a través de una
red. Las típicas aplicaciones distribuidas son de dos niveles (cliente-servidor), tres niveles
(cliente-middleware-servidor) y multinivel.
Las aplicaciones distribuidas suponen un paso más en la evolución de los sistemas
informáticos, desde el punto de vista de las necesidades que las aplicaciones plantean y
las posibilidades que la tecnología pueda ofrecer. La distribución se refiere a la
construcción de Software por partes, a las cuales les son asignadas un conjunto especifico
de responsabilidades dentro de un sistema. Es posible construir pequeños sistemas
distribuidos con computadores portátiles y otros dispositivos computacionales pequeños
conectados a una red. Ejemplos: Correo electrónico Navegación web. Telefonía IP
Compartición de ficheros
Desarrollo

Los Sistemas Distribuidos

Son aquellas en las que el software se estructura en grupos funcionales muy acoplados,
involucrando los aspectos referidos a la presentación, procesamiento y almacenamiento
de la información.
En una aplicación monolítica las tres partes forman un todo y se ejecutan en la misma
máquina.
Está más que claro que hoy en día la informática se ha impuesto en la sociedad de forma
considerable. Cada vez son más los dispositivos y los avances tecnológicos que requieren
de esta ciencia y a la misma vez esta se nutre de todas las novedades que asiduamente se
presentan en el mercado. Sin embargo, aunque todo ello se ha asentado entre nosotros
aún somos grandes desconocedores de muchos sistemas y técnicas que hacen posible lo
que conocemos como informática en su sentido más amplio. Especialmente si pensamos
en dedicarnos a ello tenemos que ponernos manos a la obra para aumentar nuestros
conocimientos.
Por ejemplo, es fundamental dominar el concepto de los sistemas distribuidos. Seguro
que lo has utilizado en multitud de ocasiones, aunque no seas consciente de ello, dado
que forma parte de la informática actual. Básicamente los sistemas distribuidos se
constituyen a través de la conexión de un grupo de varias computadoras. Estos
ordenadores están físicamente separados, cada uno contiene su software y su hardware
individual, pero tienen en común una red de comunicaciones que conecta a todos ellos a
la vez. Así el programador los analiza como un sistema único, pero con múltiples
destinatarios.

Propiedades de los sistemas distribuidos

Compartición de recursos

El término 'recurso' es bastante abstracto, pero es el que mejor caracteriza el abanico de


entidades que pueden compartirse en un sistema distribuido. El abanico se extiende desde
componentes hardware como discos e impresoras hasta elementos software como
ficheros, ventanas, bases de datos y otros objetos de datos.

La idea de compartición de recursos no es nueva ni aparece en el marco de los sistemas


distribuidos. Los sistemas multiusuario clásicos desde siempre han provisto compartición
de recursos entre sus usuarios. Sin embargo, los recursos de una computadora
multiusuario se comparten de manera natural entre todos sus usuarios. Por el contrario,
los usuarios de estaciones de trabajo monousuario o computadoras personales dentro de
un sistema distribuido no obtienen automáticamente los beneficios de la compartición de
recursos.

Los recursos en un sistema distribuido están físicamente encapsulados en una de las


computadoras y sólo pueden ser accedidos por otras computadoras mediante las
comunicaciones (la red). Para que la compartición de recursos sea efectiva, ésta debe ser
manejada por un programa que ofrezca un interfaz de comunicación permitiendo que el
recurso sea accedido, manipulado y actualizado de una manera fiable y consistente. Surge
el término genérico de gestor de recursos.

Un gestor de recursos es un módulo software que maneja un conjunto de recursos de un


tipo en particular. Cada tipo de recurso requiere algunas políticas y métodos específicos
junto con requisitos comunes para todos ellos. Éstos incluyen la provisión de un esquema
de nombres para cada clase de recurso, permitir que los recursos individuales sean
accedidos desde cualquier localización; la traslación de nombre de recurso a direcciones
de comunicación y la coordinación de los accesos concurrentes que cambian el estado de
los recursos compartidos para mantener la consistencia.

Un sistema distribuido puede verse de manera abstracta como un conjunto de gestores de


recursos y un conjunto de programas que usan los recursos. Los usuarios de los recursos
se comunican con los gestores de los recursos para acceder a los recursos compartidos del
sistema. Esta perspectiva nos lleva a dos modelos de sistemas distribuidos: el modelo
cliente-servidor y el modelo basado en objetos.

Transparencia en la distribución Un sistema distribuido es transparente si es capaz de


presentarse ante los usuarios y las aplicaciones como si se tratara de una sola
computadora. Pueden describirse diferentes aspectos de la transparencia:
Transparencia de acceso, Permite el acceso a los objetos de información remotos de la
misma forma que a los objetos de información locales.
Transparencia de migración, Permite el movimiento de objetos de información dentro
de un sistema sin afectar a los usuarios o a los programas de aplicación.
Transparencia de ubicación, Permite el acceso a los objetos de información sin
conocimiento de su localización.
Transparencia de replicación, Permite utilizar múltiples instancias de los objetos de
información para incrementar la fiabilidad y las prestaciones sin que los usuarios o los
programas de aplicación tengan por que conoces la existencia de las réplicas.
Transparencia de Concurrencia, Permite que varios procesos operen concurrentemente
utilizando objetos de información compartidos y de forma que no exista interferencia
entre ellos.
Transparencia de compartición. El que un recurso compartido intente ser accedido
simultáneamente desde varias aplicaciones no tiene efectos sobre la ejecución de la
aplicación.
Transparencia de rendimiento. Inevitablemente, implementar las propiedades de los
sistemas distribuidos será a costa de una pérdida de rendimiento.
Transparencia a fallos, Permite a los usuarios y programas de aplicación completar sus
tareas a pesar de la ocurrencia de fallos en el hardware o en el software.
Escalabilidad.
Los sistemas distribuidos operan de manera efectiva y eficiente a muchas escalas
diferentes. La escala más pequeña consiste en dos estaciones de trabajo y un servidor de
ficheros, mientras que un sistema distribuido construido alrededor de una red de área local
simple podría contener varios cientos de estaciones de trabajo, varios servidores de
ficheros, servidores de impresión y otros servidores de propósito específico. A menudo
se conectan varias redes de área local para formar internetworks, y éstas podrían contener
muchos miles de ordenadores que forman un único sistema distribuido, permitiendo que
los recursos sean compartidos entre todos ellos.
Según Neuman en 1994 la escalabilidad de un sistema se puede medir de acuerdo con al
menos tres dimensiones:
 Un sistema puede ser escalable con respecto a su tamaño, lo cual significa que
podemos agregarle fácilmente usuarios y recursos.
 Un sistema escalable geográficamente, es aquel en el cual usuarios y recursos
pueden radicar muy lejos unos de los otros.
 Un sistema puede ser escalable administrativamente; esto es, puede ser fácil de
manejar incluso si involucra muchas organizaciones administrativas diferentes.
Fiabilidad y tolerancia a fallos
La fiabilidad de un sistema puede definirse como su capacidad para realizar
correctamente y en todo momento las funciones para las que se ha diseñado. Se concreta
en dos aspectos:
Disponibilidad. Es la fracción de tiempo que el sistema está operativo. El principal
parámetro para medir la disponibilidad es el tiempo medio entre fallos, pero hay que
considerar también el tiempo de reparación.
Tolerancia a fallos. Los sistemas informáticos a veces fallan. Cuando se producen fallos
en el software o en el hardware, los programas podrían producir resultados incorrectos o
podrían pararse antes de terminar la computación que estaban realizando. El diseño de
sistemas tolerantes a fallos se basa en dos cuestiones, complementarias entre sí:
Redundancia hardware (uso de componentes redundantes) y recuperación del software
(diseño de programas que sean capaces de recuperarse de los fallos).

Componentes de un sistema distribuido


Una aplicación distribuida que sigue el modelo cliente-servidor tiene los siguientes
componentes:
 Servidor: Programa que se ejecuta en un computador que está conectado a una red.
 Cliente: Programa que ejecuta el usuario de la aplicación. El cliente hace sus
peticiones al servidor a través de la red. Por ejemplo, un navegador Web.
 Protocolo de aplicación para la comunicación entre el cliente y el servidor. El
protocolo define el tipo de mensajes intercambiados; por ejemplo, el protocolo de la
capa de aplicación de la web, HTTP, define el formato y la secuencia de los mensajes
transmitidos entre el navegador y el servidor web.
 Formato de los mensajes que se intercambian, algunas veces forma parte del
servicio; por ejemplo, en el correo electrónico se define el formato de los mensajes
electrónicos.

Tipos de Sistemas Distribuidos


Sistemas distribuidos de cómputo

Sistemas de cómputo en clúster.- Sistema de computación basado en hardware estándar


conectado por una red dedicada (de altas prestaciones) dedicado a un propósito específico.
[Baker00] y Nodos de computación: PCs o estaciones de trabajo (SMPs). y Red de
conexión: Desde redes de alta velocidad hasta hardware específico.
Por medio de un clúster se pueden conseguir capacidades de cálculo superiores a las de
un ordenador más caro que el costo conjunto de los ordenadores del clúster. Ejemplo de
clúster baratísimos son los que se están realizando en algunas universidades con
computadoras personales desechados por "anticuados" que consiguen competir en
capacidad de cálculo con superordenadores carísimos.
Para garantizar esta capacidad de cálculo, los problemas necesitan ser paralelizables, ya
que el método con el que los clústers agilizan el procesamiento es dividir el problema en
problemas más pequeños y calcularlos en los nodos, por lo tanto, si el problema no cumple
con esta característica, no puede utilizarse el clúster para su cálculo.
Sistemas de cómputo en grid.- es una tecnología innovadora que permite utilizar de
forma coordinada todo tipo de recursos (entre ellos cómputo, almacenamiento y
aplicaciones específicas) que no están sujetos a un control centralizado. En este sentido
es una nueva forma de computación distribuida, en la cual los recursos pueden ser
heterogéneos (diferentes arquitecturas, supercomputadores, clusters...) y se encuentran
conectados mediante redes de área extensa (por ejemplo, Internet).

Sistemas distribuidos de información


Son sistemas organizacionales y corporativos, los cuales implican la conjunción de
aplicaciones que inter-operan gracias a una red.
Inicialmente los sistemas constaban de un equipo que ejecutaba un servidor (con
frecuencia servidor de base de datos) y de programas remotos llamados clientes. Dichos
clientes son capaces de enviar peticiones y recibir respuesta de servidor.
Los componentes de las aplicaciones debían ser capaces de comunicarse entre sí de
manera directa y no sólo mediante un comporta-miento de petición-respuesta soportado
por sistemas de procesamiento de transacciones Esta necesidad de comunicación entre
aplicaciones dio pie a muchos modelos de comunicación diferentes, La idea principal fue
que aplicaciones existentes pudieran intercambiar información de manera directa Existen
diversos tipos de comunicación middleware el RPC y RMI
 RPC (llamadas a procedimientos remotos). - La comunicación se lo realiza a
través de peticiones mediante componentes de aplicación, es decir si realiza una
llamada a un procedimiento local, lo cual resulta en una petición que se empaca
como un mensaje y se envía al componente invocado (remoto). De igual manera,
el resultado se enviará de regreso y será devuelto a la aplicación como resultado
de la llamada al procedimiento.
 RMI (invocaciones a métodos remotos). - Una RMI es básicamente lo mismo
que una RPC, excepto que la RMI opera sobre objetos en lugar de aplicaciones.

Sistemas distribuidos masivos


Es un sistema de computación diseñado para realizar algunas pocas funciones dedicada,
frecuentemente en un sistema de computación en tiempo real. Al contrario de lo que
ocurre con los ordenadores de propósito general que están diseñados para cubrir un
amplio rango de necesidades. En el mejor de los casos, los dispositivos son configurados
por sus propietarios, ya que de otro modo necesitan descubrir automáticamente su
ambiente y “adaptarse” de la mejor manera posible. Un tipo de sistema masivo cada vez
más popular, pero que tal vez sea el menos restringido, es el sistema construido alrededor
de una red casera.
 Sistemas caseros. - Es el sistema menos restringido, es el sistema construido
alrededor de una red casera. Estos sistemas generalmente consistentes en una o
más computadoras personales.

Conclusiones
 Los sistemas distribuidos abarcan una cantidad de aspectos considerables,
por lo cual su desarrollo implica mucha complejidad.
 Existen ciertos aspectos que requieren extremo cuidado al desarrollarse e
implantarse como el manejo de fallos, el control de la concurrencia, etc.
 Existen muchos temas de investigación relacionados con los sistemas
distribuidos, por ejemplo, los planteados en el apartado de Desafíos.
 Se nota también que muchas tecnologías están en constante desarrollo y
maduración, lo cual implica un minucioso estudio previo de muchos
factores antes de apostar por alguna tecnología en especial.

Bibliografía
Sistemas distribuidos
https://pregrado.virtual.umet.edu.ec/pluginfile.php/78942/mod_resource/content/0/Intro
duccion%20%28ver%20Extensibilidad%20y%20Apertura%29.pdf
introducción a los sistemas distribuidos
https://pregrado.virtual.umet.edu.ec/pluginfile.php/78943/mod_resource/content/0/Gene
ral%20%28ver%201.7%20Sistemas%20Abiertos%29.pdf
Sistemas de información: aspectos técnicos y legales
https://pregrado.virtual.umet.edu.ec/pluginfile.php/78944/mod_resource/content/0/libro
%20sistemas%20de%20informacion%20%20%28ver%20Sistema%20Abierto%20%5B
en%20general%5D%20%29.pdf
Diseño de aplicaciones de tiempo real para plataformas abiertas
https://pregrado.virtual.umet.edu.ec/pluginfile.php/78945/mod_resource/content/0/Tesis
%20Doctoral%20%28ver%20capitulo%201-
%20Sistemas%20de%20tiempo%20real%20o%20en%20plataforma%20abierta%2C%2
0primer%20parrafo%29.pdf

Das könnte Ihnen auch gefallen