You are on page 1of 16

Tarea No.

Nombre: GONZALEZ GARCIA ANDROS SAUL

Caractersticas Principales de los


Sistemas Distribuidos
Comparticin de Recursos
El trmino '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 comparticin de recursos no es nueva ni aparece en el marco de
los sistemas distribuidos. Los sistemas multiusuario clsicos desde siempre
han provisto comparticin 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 automticamente los beneficios de la comparticin
de recursos.
Apertura
Un sistema informtico es abierto si el sistema puede ser extendido de
diversas maneras. Un sistema puede ser abierto o cerrado con respecto a
extensiones hardware (aadir perifricos, memoria o interfaces de
comunicacin, etc... ) o con respecto a las extensiones software ( aadir
caractersticas al sistema operativo, protocolos de comunicacin y servicios
de comparticin de recursos, etc... ). La apertura de los sistemas
distribuidos se determina primariamente por el grado hacia el que nuevos
servicios de comparticin de recursos se pueden aadir sin perjudicar ni
duplicar a los ya existentes.
Concurrencia
Cuando existen varios procesos en una nica maquina decimos que se
estn ejecutando concurrentemente. Si el ordenador esta equipado con un
nico procesador central, la concurrencia tiene lugar entrelazando la
ejecucin de los distintos procesos. Si la computadora tiene N
procesadores, entonces se pueden estar ejecutando estrictamente a la vez
hasta N procesos.
En los sistemas distribuidos hay muchas maquinas, cada una con uno o
mas procesadores centrales. Es decir, si hay M ordenadores en un sistema
distribuido con un procesador central cada una entonces hasta M procesos

Tarea No. 3

Nombre: GONZALEZ GARCIA ANDROS SAUL

estar ejecutndose en paralelo.


En un sistema distribuido que esta basado en el modelo de comparticin de
recursos, la posibilidad de ejecucin paralela ocurre por dos razones:
Muchos usuarios interactan simultneamente con programas de
aplicacin.
Muchos procesos servidores se ejecutan concurrentemente, cada uno
respondiendo a diferentes peticiones de los procesos clientes.
Escalabilidad
Los sistemas distribuidos operan de manera efectiva y eficiente a muchas
escalas diferentes. La escala ms pequea 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 podra contener varios
cientos de estaciones de trabajo, varios servidores de ficheros, servidores
de impresin y otros servidores de propsito especifico. A menudo se
conectan varias redes de rea local para formar internetworks, y stas
podran contener muchos miles de ordenadores que forman un nico
sistema distribuido, permitiendo que los recursos sean compartidos entre
todos ellos.
Tanto el software de sistema como el de aplicacin no deberan cambiar
cuando la escala del sistema se incrementa. La necesidad de escalabilidad
no es solo un problema de prestaciones de red o de hardware, sino que
esta ntimamente ligada con todos los aspectos del diseo de los sistemas
distribuidos. El diseo del sistema debe reconocer explcitamente la
necesidad de escalabilidad o de lo contrario aparecern serias limitaciones.
Tolerancia a Fallos
Los sistemas informticos a veces fallan. Cuando se producen fallos en el
software o en el hardware, los programas podran producir resultados
incorrectos o podran pararse antes de terminar la computacin que estaban
realizando. El diseo de sistemas tolerantes a fallos se basa en dos
cuestiones, complementarias entre s: Redundancia hardware (uso de
componentes redundantes) y recuperacin del software (diseo de
programas que sean capaces de recuperarse de los fallos).
En los sistemas distribuidos la redundancia puede plantearse en un grano
mas fino que el hardware, pueden replicarse los servidores individuales que
son esenciales para la operacin continuada de aplicaciones criticas.
La recuperacin del software tiene relacin con el diseo de software que

Tarea No. 3

Nombre: GONZALEZ GARCIA ANDROS SAUL

sea capaz de recuperar (roll-back) el estado de los datos permanentes


antes de que se produjera el fallo.
Transparencia
La transparencia se define como la ocultacin al usuario y al programador
de aplicaciones de la separacin de los componentes de un sistema
distribuido, de manera que el sistema se percibe como un todo, en vez de
una coleccin de componentes independientes. La transparencia ejerce una
gran influencia en el diseo del software de sistema.
El manual de referencia RM-ODP [ISO 1996a] identifica ocho formas de
transparencia. Estas proveen un resumen til de la motivacin y metas de
los sistemas distribuidos.
1. Evolucin de los Sistemas Distribuidos.
Procesamiento central (Host).- Refiere a uno de los primeros modelos de
computadoras interconectadas, llamados centralizados, donde todo el
procesamiento de la organizacin se llevaba a cabo en una sola
computadora, normalmente un Mainframe, y los usuarios empleaban
sencillas computadoras personales.
Algunos problemas de este modelo son:
Cuando la carga de procesamiento aumentaba se tenia que cambiar el
hardware del Mainframe, lo cual es ms costoso que aadir ms
computadores personales clientes o servidores que aumenten las
capacidades.
El otro problema que surgi son las modernas interfaces graficas de
usuario, las cuales podan conllevar a un gran aumento de trafico en los
medios de comunicacin y por consiguiente podan colapsar a los sistemas.
Grupo de Servidores.- Otro modelo que entr a competir con el anterior,
tambin un tanto centralizado, son un grupo de computadoras actuando
como servidores, normalmente de archivos o de impresin, poco
inteligentes para un numero de minicomputadores que hacen el
procesamiento conectados a una red de rea local.
Algunos problemas de este modelo son:

Tarea No. 3

Nombre: GONZALEZ GARCIA ANDROS SAUL

Podra generarse una saturacin de los medios de comunicacin entre los


servidores poco inteligentes y los minicomputadores, por ejemplo cuando se
solicitan archivos grandes por varios clientes a la vez, podan disminuir en
gran medida la velocidad de transmisin de informacin.
La Computacin Cliente Servidor.- Este modelo, que predomina en la
actualidad, permite descentralizar el procesamiento y recursos, sobre todo,
de cada uno de los servicios y de la visualizacin de la Interfaz Grafica de
Usuario. Esto hace que ciertos servidores estn dedicados solo a una
aplicacin determinada y por lo tanto ejecutarla en forma eficiente.
2. Cliente-Servidor
El modelo cliente-servidor de un sistema distribuido es el modelo ms
conocido y ms ampliamente adoptado en la actualidad. Hay un conjunto de
procesos servidores, cada uno actuando como un gestor de recursos para
una coleccin de recursos de un tipo, y una coleccin de procesos clientes,
cada uno llevando a cabo una tarea que requiere acceso a algunos recursos
hardware y software compartidos. Los gestores de recursos a su vez
podran necesitar acceder a recursos compartidos manejados por otros
procesos, as que algunos procesos son ambos clientes y servidores. En el
modelo, cliente-servidor, todos los recursos compartidos son mantenidos y
manejados por los procesos servidores. Los procesos clientes realizan
peticiones a los servidores cuando necesitan acceder a algn recurso. Si la
peticin es valida, entonces el servidor lleva a cabo la accin requerida y
enva una respuesta al proceso cliente.
El termino proceso se usa aqu en el sentido clsico de los sistemas
operativos. Un proceso es un programa en ejecucin. Consiste en un
entorno de ejecucin con al menos un thread de control.
El modelo cliente-servidor nos da un enfoque efectivo y de propsito general
para la comparticin de informacin y de recursos en los sistemas
distribuidos. El modelo puede ser implementado en una gran variedad de
entornos software y hardware. Las computadoras que ejecuten los
programas clientes y servidores pueden ser de muchos tipos y no existe la
necesidad de distinguir entre ellas; los procesos cliente y servidor pueden
incluso residir en la misma maquina.
En esta visin simple del modelo cliente-servidor, cada proceso servidor
podra ser visto como un proveedor centralizado de los recursos que
maneja. La provisin de recursos centralizada no es deseable en los
sistemas distribuidos. Es por esta razn por lo que se hace una distincin
entre los servicios proporcionados a los clientes y los servidores encargados

Tarea No. 3

Nombre: GONZALEZ GARCIA ANDROS SAUL

de proveer dichos servicios. Se considera un servicio como una entidad


abstracta que puede ser provista por varios procesos servidores
ejecutndose en computadoras separadas y cooperando va red.
Sistema en donde el cliente es una mquina que solicita un determinado
servicio y se denomina servidor a la mquina que lo proporciona. Los
servicios pueden ser:
Ejecucin de un determinado programa.
Acceso a un determinado banco de informacin.
Acceso a un dispositivo de hardware.
La presencia de un medio fsico de comunicacin entre las mquinas,
es un elemento primordial, y depender de la naturaleza de este
medio la viabilidad del sistema.
Categoras de Servidores:
A continuacin se presenta una lista de los servidores ms comunes:
Servidores de archivos.- Proporciona archivos para clientes. Si los
archivos no fueran tan grandes y los usuarios que comparten esos
archivos no fueran muchos, esto sera una gran opcin de
almacenamiento y procesamiento de archivos. El cliente solicita los
archivos y el servidor los ubica y se los enva.
Servidores de Base de Datos.- Son los que almacenan gran cantidad
de datos estructurados, se diferencian de los de archivos pues la
informacin que se enva est ya resumida en la base de datos.
Ejemplo: El Cliente hace una consulta, el servidor recibe esa consulta
(SQL) y extrae slo la informacin pertinente y enva esa respuesta al
cliente.
Servidores de Software de Grupo.- El software de grupo es aquel, que
permite organizar el trabajo de un grupo. El servidor gestiona los
datos que dan soporte a estas tareas. Por ejemplo: almacenar las
listas de correo electrnico. El Cliente puede indicarle, que se ha
terminado una tarea y el servidor se lo enva al resto del grupo.

Tarea No. 3

Nombre: GONZALEZ GARCIA ANDROS SAUL

Servidores WEB.- Son los que guardan y proporcionan pginas


HTML. El cliente desde un browser o navegador hace un llamado de
una pgina (link) y el servidor recibe el mensaje para despus enviar
la pgina solicitada.
Servidores de correo.- Gestiona el envo y recepcin de correo de un
grupo de usuarios (el servidor no necesita ser muy potente). El
servidor slo debe utilizar un protocolo de correo.
Servidor de objetos.- Permite almacenar objetos que pueden ser
activados de manera remota. Los clientes pueden ser capaces de
activar los objetos que se encuentren en el servidor.
Servidores de impresin.- Gestionan las solicitudes de impresin de
los clientes. El cliente enva la solicitud de impresin, el servidor
recibe la solicitud y la ubica en la cola de impresin, ordena a la
impresora que lleve a cabo las operaciones y luego avisa a la
computadora cliente que ya acabo su respectiva impresin.
Servidores de aplicacin.- En el pasado refera a un servidor que se
dedicaba a una nica aplicacin. Era bsicamente una aplicacin a la
que podan acceder los clientes. En la actualidad refiere ms a un
servidor Web con capacidad de procesamiento, por lo que suele ser a
la vez servidor Web con algunas funciones de lgica de negocio.
Componentes de Software:
Se distinguen tres componentes bsicos de software:
Presentacin.- Tiene que ver con la presentacin al usuario de un
conjunto de objetos visuales y llevar a cabo el procesamiento de los
datos producidos por el mismo y los devueltos por el servidor.
Lgica de aplicacin.- Esta capa es la responsable del procesamiento
de la informacin que tiene lugar en la aplicacin.
Base de datos.- Esta compuesta de los archivos que contienen los
datos de la aplicacin.
Arquitecturas Cliente / Servidor

Tarea No. 3

Nombre: GONZALEZ GARCIA ANDROS SAUL

A continuacin mostramos las arquitecturas cliente-servidor ms


populares:
Arquitectura Cliente-Servidor de Dos Capas.- Consiste en una capa de
presentacin y lgica de la aplicacin; y la otra de la base de datos.
Normalmente esta arquitectura se utiliza en las siguientes situaciones:
o Cuando se requiera poco procesamiento de datos en la organizacin. o
Cuando se tiene una base de datos centralizada en un solo servidor. o
Cuando
la
base
de
datos
es
relativamente
esttica.
o Cuando se requiere un mantenimiento mnimo.
Arquitectura Cliente-Servidor de Tres Capas- Consiste en una capa de la
Presentacin, otra capa de la lgica de la aplicacin y otra capa de la base
de datos. Normalmente esta arquitectura se utiliza en las siguientes
situaciones:
o Cuando se requiera mucho procesamiento de datos en la aplicacin.
o En aplicaciones donde la funcionalidad este en constante cambio.
o Cuando los procesos no estn relativamente muy relacionados con los
datos.
o Cuando se requiera aislar la tecnologa de la base de datos para que sea
fcil de
cambiar.
o Cuando se requiera separar el cdigo del cliente para que se facilite el
mantenimiento.
o Esta muy adecuada para utilizarla con la tecnologa orientada a objetos.
Clasificacin de los sistemas cliente servidor:
A continuacin mostramos la clasificacin de los sistemas cliente/servidor
de acuerdo al nivel de abstraccin del servicio que ofrecen:
1. Representacin distribuida.- La interaccin con el usuario se realiza en el
servidor, el cliente hace de pasarela entre el usuario y el servidor.
2. Representacin Remota.-La lgica de la aplicacin y la base de datos
se encuentran en el servidor. El cliente recibe y formatea los datos
para interactuar con el usuario.

Tarea No. 3

Nombre: GONZALEZ GARCIA ANDROS SAUL

3. Lgica Distribuida.- El cliente se encarga de la interaccin con el


usuario y de algunas funciones triviales de la aplicacin. Por ejemplo
controles de rango de campos, campos obligatorios, etc. Mientras que
el resto de la aplicacin, junto con la base de datos, estn en el
servidor.
4. Gestin Remota de Datos.- El cliente realiza la interaccin con el
usuario y ejecuta la aplicacin y el servidor es quien maneja los datos.
5. Base de Datos Distribuidas.- El cliente realiza la interaccin con el
usuario, ejecuta la aplicacin, debe conocer la topologa de la red, as
como la disposicin y ubicacin de los datos. Se delega parte de la
gestin de la base de datos al cliente.
6. Cliente servidor a tres niveles.- El cliente se encarga de la interaccin
con el usuario, el servidor de la lgica de aplicacin y la base de
datos puede estar en otro servidor.
7. Niveles de una aplicacin Web. El nivel de interfaz de usuario est
compuesto por las pginas HTML que el usuario solicita a un servidor
Web y que visualiza en un cliente Web (normalmente, un navegador).
El nivel de lgica de negocio est compuesto por los mdulos que
implementan la lgica de la aplicacin y que se ejecutan en un
servidor de aplicaciones. El nivel de datos est compuesto por los
datos, normalmente gestionados por un sistema de gestin de bases
de datos (servidor de datos), que maneja la aplicacin web.

3. Protocolo
Es un conjunto bien conocido de reglas y formatos que se utilizan para la
comunicacin entre procesos que realizan una determinada tarea. Se
requieren dos partes:
Especificacin de la secuencia de mensajes que se han de
intercambiar.
Especificacin del formato de los datos en los mensajes.

Tarea No. 3

Nombre: GONZALEZ GARCIA ANDROS SAUL

Un protocolo permite que componentes heterogneos de sistemas


distribuidos puedan desarrollarse independientemente, y por medio
de mdulos de software que componen el protocolo, haya una
comunicacin transparente entre ambos componentes. Es
conveniente mencionar que estos componentes del protocolo deben
estar tanto en el receptor como en el emisor.
Ejemplos de protocolos usados en los sistemas distribuidos:
IP: Protocolo de Internet.- Protocolo de la capa de Red, que permite definir
la unidad bsica de transferencia de datos y se encarga del
direccionamiento de la informacin, para que llegue a su destino en la red.
TCP: Protocolo de Control de Transmisin.- Protocolo de la capa de
Transporte, que permite dividir y ordenar la informacin a transportar
en paquetes de menor tamao para su transporte y recepcin.
HTTP: Protocolo de Transferencia de Hipertexto.- Protocolo de la
capa de aplicacin, que permite el servicio de transferencia de
pginas de hipertexto entre el cliente WEB y los servidores.
SMTP: Protocolo de Transferencia de Correo Simple.- Protocolo de la
capa de aplicacin, que permite el envo de correo electrnico por la
red.
POP3: Protocolo de Oficina de Correo.- Protocolo de la capa de
aplicacin, que permite la gestin de correos en Internet, es decir, le
permite a una estacin de trabajo recuperar los correos que estn
almacenados en el servidor.

4. Middleware
El trmino middleware se discute en [Lewandosky 1998]. El software
distribuido requerido para facilitar las interacciones cliente-servidor se
denomina middleware. El acceso transparente a servicios y recursos no
locales distribuidos a travs de una red se provee a travs del middleware,
que sirve como marco para la comunicaciones entre las porciones cliente y
servidor de un sistema.
El middleware define: el API que usan los clientes para pedir un servicio a

Tarea No. 3

Nombre: GONZALEZ GARCIA ANDROS SAUL

un servidor, la transmisin fsica de la peticin va red, y la devolucin de


resultados desde el servidor al cliente. Ejemplos de middleware estndar
para dominios especficos incluyen: ODBC, para bases de datos, Lotus para
groupware, HTTP y SSL para Internet y CORBA, DCOM y JAVA RMI para
objetos distribuidos.
El middleware fundamental o genrico es la base de los sistemas clienteservidor. Los servicios de autentificacin en red, llamadas a procedimiento
remoto, sistemas de ficheros distribuidos y servicios de tiempo en red se
consideran parte del middleware genrico. Este tipo de middleware empieza
a ser parte estndar de los sistemas operativos modernos como Windows
NT. En sistemas donde no se disponga deber recurrirse a middlware del
tipo OSD DCE (Distributed Computing Environment) [OSF 1994]. El
middleware especifico para un dominio complementa al middlware genrico
de cara a aplicaciones mucho mas especificas.
El protocolo de comunicaciones mas usado por el middlware, tanto genrico
como especifico, es TCP/IP. Esto se debe a su amplia difusin en todos los
sistemas operativos del mercado y en especial en los ordenadores
personales.
5. Objetos distribuidos
En los sistemas Cliente/Servidor, un objeto distribuido es aquel que esta
gestionado por un servidor y sus clientes invocan sus mtodos utilizando un
"mtodo de invocacin remota". El cliente invoca el mtodo mediante un
mensaje al servidor que gestiona el objeto, se ejecuta el mtodo del objeto
en el servidor y el resultado se devuelve al cliente en otro mensaje.
Tecnologas orientadas a los objetos distribuidos:
Las tres tecnologas importantes y ms usadas en este mbito son:
1. RMI.- Remote Invocation Method.- Fue el primer framework para crear
sistemas distribuidos de Java. El sistema de Invocacin Remota de Mtodos
(RMI) de Java permite, a un objeto que se est ejecutando en una Maquina
Virtual Java (VM), llamar a mtodos de otro objeto que est en otra VM
diferente. Esta tecnologa est asociada al lenguaje de programacin Java,
es decir, que permite la comunicacin entre objetos creados en este
lenguaje.
2. DCOM.- Distributed Component Object Model.- El Modelo de Objeto
Componente Distribuido, esta incluido en los sistemas operativos de
Microsoft. Es un juego de conceptos e interfaces de programa, en el cual los
objetos de programa del cliente, pueden solicitar servicios de objetos de
programa servidores en otras computadoras dentro de una red. Esta
tecnologa esta asociada a la plataforma de productos Microsoft.
3. CORBA.- Common Object Request Broker Architecture.- Tecnologa
introducida por el Grupo de Administracin de Objetos OMG, creada para

Tarea No. 3

Nombre: GONZALEZ GARCIA ANDROS SAUL

establecer una plataforma para la gestin de objetos remotos independiente


del lenguaje de programacin.
6. Base de datos distribuida
Es una coleccin de datos (base de datos) construida sobre una red y que
pertenecen, lgicamente, a un solo sistema distribuido, la cual cumple las
siguientes condiciones:
La informacin de la base de datos esta almacenada fsicamente en
diferentes sitios de la red.
En cada sitio de la red, la parte de la informacin, se constituye como
una base de datos en s misma.
Las bases de datos locales tienen sus propios usuarios locales, sus
propios DBMS y programas para la administracin de transacciones,
y su propio administrador local de comunicacin de datos.
Estas base de datos locales deben de tener una extensin, que
gestione las funciones de sociedad necesarias; la combinacin de
estos componentes con los sistemas de administracin de base de
datos locales, es lo que se conoce como Sistema Administrador de
Base de Datos Distribuidas.
Este gestor global permite que usuarios puedan acceder a los datos
desde cualquier punto de la red, como si lo hicieran con los datos de
su base de datos local, es decir, para el
usuario, no debe existir diferencia en trabajar con datos locales o datos de
otros sitios de la red.
En consecuencia, la base de datos distribuida, es como una unidad virtual,
cuyas partes se almacenan fsicamente en varias bases de datos "reales"
distintas, ubicadas en diferentes sitios.
Ejemplo de base de datos distribuida:
Considere un banco que tiene tres sucursales, en cada sucursal, una
computadora controla las terminales de la misma y el sistema de cuentas.

Tarea No. 3

Nombre: GONZALEZ GARCIA ANDROS SAUL

Cada computador con su sistema de cuentas local en cada sucursal


constituye un "sitio" de la BDD; las computadoras estn conectadas por la
red. Durante las operaciones normales, las aplicaciones en las terminales
de la sucursal necesitan slo acceder la base de datos de la misma. Como
slo acceden a la misma red local, se les llaman aplicaciones locales.
Desde el punto de vista tecnolgico, aparentemente lo importante es la
existencia de algunas transacciones que acceden a informacin en ms de
una sucursal. Estas transacciones son llamadas transacciones globales o
transacciones distribuidas. La existencia de transacciones globales ser
considerada como una caracterstica que nos ayude a discriminar entre las
BDD y un conjunto de base de datos locales.
Una tpica transaccin global sera una transferencia de fondos de una
sucursal a otra. Esta aplicacin requiere de actualizar datos en dos
diferentes sucursales y asegurarse de la real actualizacin en ambos sitios
o en ninguno. Asegurar el buen funcionamiento de aplicaciones globales es
una tarea difcil.

7. Desarrollo WEB y tecnologas inalmbricas.


Caso particular de los sistemas Cliente-Servidor con representacin remota.
En donde se dispone de un protocolo estndar: HTTP y un Middleware
denominado WebServer. En la actualidad la aplicacin de sistemas
informticos basados en Internet, es una herramienta fundamental para las
organizaciones que desean tener cierta presencia competitiva.
Tecnologas de la lgica de la aplicacin en el servidor web:
CGI: Common Gateware Interface..- Son programas que se ejecutan
en el servidor, pueden servir como pasarela con una aplicacin o
base de datos o para generar documentos HTML de forma
automtica. Cada peticin http ejecuta un proceso, el cual analiza la
solicitud y genera un resultado. Son independientes del SO, y
presentan la ventaja de que, dado un programa escrito en un lenguaje
cualquiera, es fcil adaptarlo a un CGI. Entre los lenguajes que se
usan para CGIs, el ms popular es el Perl.

Tarea No. 3

Nombre: GONZALEZ GARCIA ANDROS SAUL

Servlets: Pequeos programas en Java que se ejecutan de forma


persistente en el servidor, y que, por lo tanto, tienen una activacin
muy rpida, y una forma ms simple de hacerlo. Estos programas
procesan una peticin y generan la pgina de respuesta.
ASP (Active Server Pages): Una pgina ASP es un fichero de slo
texto que contiene las secuencias de comandos, junto con el HTML
necesario, y que se guarda con la extensin ".asp". Al ser llamado por
el navegador, el motor ASP del IIS (Internet Information Server) se
encarga automticamente de ejecutarlo como se suele hacer con un
programa cualquiera, pero cuya salida siempre ser a travs del
navegador que le invoca. Es un entorno propietario de Microsoft y el
lenguaje de secuencia de comandos predeterminado del IIS es el
VBScript, aunque puede cambiarse.
JSP (Java Server Pages), que consisten en pequeos trozos de
cdigo en Java que se insertan dentro de pginas web, de forma
anloga a los ASPs. Ambas opciones, hoy en da, son muy populares
en sitios de comercio electrnico. Frente a los ASPs, la ventaja que
presentan es que son independientes del sistema operativo y del
procesador de la mquina.
PHP es un lenguaje cuyos programas se insertan tambin dentro de las
pginas web, al igual que los ASPs y JSPs; es mucho ms simple de usar, y
el acceso a bases de datos desde l es muy simple. Es tremendamente
popular en sitios de comercio electrnico con poco trfico, por su facilidad
de desarrollo y rapidez de implantacin.
Consideraciones a tomar en el desarrollo de un sistema WEB
1. Separar la lgica de la aplicacin de la interface de usuario.
2. Utilizar mtodos estndar de comunicacin entre la lgica de
aplicacin y la
interface de usuario.
3. Herramientas que permitan una fcil adaptacin de las aplicaciones a
los nuevos
dispositivos que irn apareciendo.

Tarea No. 3

Nombre: GONZALEZ GARCIA ANDROS SAUL

4. Definir el coste en comunicaciones que debe asumir la organizacin.


5. Tener en cuenta los procesos de rplica, periodicidad y el ancho de
banda que
consuman.
6. Replantear la idoneidad de la ubicacin de cada proceso.
7. Extremar las pruebas al disear e implementar los protocolos de
comunicacin.
8. Ventajas de los Sistemas Distribuidos
Con respecto a Sistemas Centralizados:
Una de las ventajas de los sistemas distribuidos es la economa, pues
es mucho ms barato, aadir servidores y clientes cuando se requiere
aumentar la potencia de procesamiento.
El trabajo en conjunto. Por ejemplo: en una fabrica de ensamblado,
los robots tienen sus CPUs diferentes y realizan acciones en
conjunto, dirigidos por un sistema distribuido.
Tienen una mayor confiabilidad. Al estar distribuida la carga de trabajo
en muchas mquinas la falla de una de ellas no afecta a las dems, el
sistema sobrevive como un todo.
Capacidad de crecimiento incremental. Se puede aadir
procesadores al sistema incrementando su potencia en forma gradual
segn sus necesidades.
Con respecto a PCs Independientes:
Se pueden compartir recursos, como programas y perifricos, muy
costosos. Ejemplo:
Impresora Lser, dispositivos de almacenamiento masivo, etc.
1. Al compartir recursos, satisfacen las necesidades de muchos
usuarios a la vez. Ejemplo: Sistemas de reservas de aerolneas.

Tarea No. 3

Nombre: GONZALEZ GARCIA ANDROS SAUL

2. Se logra una mejor comunicacin entre las personas. Ejemplo: el


correo electrnico.
Tienen mayor flexibilidad, la carga de trabajo se puede distribuir entre
diferentes computadoras.

9. Desventajas de los Sistemas Distribuidos


El principal problema es el software, el diseo, implantacin y uso del
software distribuido, pues presenta numerosos inconvenientes. Los
principales interrogantes son los siguientes:
Qu tipo de S. O., lenguaje de programacin y aplicaciones son
adecuados para estos sistemas?.
Cunto deben saber los usuarios de la distribucin?.
Qu tanto debe hacer el sistema y qu tanto deben hacer los
usuarios?.
La respuesta a estos interrogantes no es uniforme entre los
especialistas, pues existe una gran diversidad de criterios y de
interpretaciones al respecto.
Un aspecto primordial en este tipo de sistemas tiene que ver con las
redes de comunicacin. Por ejemplo: -Prdida de mensajes,
saturacin en el trfico, etc. Otro problema que puede surgir al
compartir datos es la seguridad de los mismos. En general se
considera que las ventajas superan a las desventajas, si estas ltimas
se administran seriamente.

Tarea No. 3

Nombre: GONZALEZ GARCIA ANDROS SAUL

Conclusiones:

Los sistemas distribuidos abarcan una cantidad de aspectos


considerables, sistemas operativos, comunicaciones, modelos de
programacin, etc., lo que hace que sus beneficios se pueden traducir
en complejidades al momento de su implementacin.

Existen ciertos aspectos que requieren cuidado especial ya que


pueden pasar de ser una ventaja a una desventaja, por ejemplo, el
manejo de fallos, el control de la concurrencia, etc.

Existen muchos temas de investigacin relacionados con los


sistemas distribuidos, en la seccin de Desafos se presentan algunos
ejemplos.

Es importante sealar que muchas tecnologas estn en constante


desarrollo y maduracin, esto requiere de un estudio a profundidad de
los factores que intervienen en cada aspecto de los sistemas
distribuidos antes de apostar por alguna tecnologa en especial.

Es claro que la evolucin constante en la tecnologa sigue


impulsando y estableciendo nuevos retos en el desarrollo de los
sistemas distribuidos situacin que se ve casi imposible de revertir

You might also like