lunes, 2 de febrero de 2015

Arquitectura Cliente/Servidor


INTRODUCCIÓN

La arquitectura cliente-servidor es un modelo de aplicación distribuida en el que las tareas se reparten entre los proveedores de recursos o servicios, llamados servidores, y los demandantes, llamados clientes. Un cliente realiza peticiones a otro programa, el servidor, quien le da respuesta.

Elementos principales
"Los elementos principales de la arquitectura cliente servidor son justamente el elemento llamado cliente y el otro elemento llamado servidor". Por ejemplo dentro de un ambiente multimedia, el elemento cliente seria el dispositivo que puede observar el vídeo, cuadros y texto, o reproduce el audio distribuido por el elemento servidor.
Aplicaciones de una Capa.
Las capas dentro de una arquitectura son nada más que un conjunto de servicios especializados que pueden ser accesibles por múltiples clientes y fácilmente reutilizables.

Este tipo de arquitectura se caracteriza por tener en una sola asociación lógica y en ella a la presentación, la lógica de negocios y los datos; que si los ponemos como servicios se convierten en capas, lo veremos más adelante.

Aplicaciones de 2 capas.
La arquitectura de dos capas en la actualidad es muy utilizada, aunque con muchas fallas, todavía no se ha podido dejar de usar. Estas arquitecturas fueron las primeras en aprovecharse de la estructura cliente-servidor.


Las capas que esta arquitectura presenta son las siguientes:
·         Nivel de aplicación
este nivel es en el que se encuentra toda la interfaz del sistema y es la que el usuario puede disponer para realizar su actividad con el sistema.
·         Nivel de la base de datos.
este nivel de la base de datos también llamado el repositorio de datos, es la capa en donde se almacena toda la información ingresada en el sistema y que se deposita en forma permanente.
Existen herramientas para el desarrollo en dos capas por ejemplo visual basic, access y sql.

Aplicaciones de 3 capas
La arquitectura de dos capas si bien ayudó en unos años atrás, se vio la necesidad de crear una nueva arquitectura ya que en dos capas se tenía algunos problemas en la capa de aplicación ya que la principal desventaja de esta era el peso que tenía para el cliente, como se mencionó anteriormente.
Aplicación de tres capas.

Por estas razones, existe una fuerte y bien avanzada tendencia a adoptar una arquitectura de tres capas.
Y es así que se creó la arquitectura de tres capas las cuales son:
·         Nivel de aplicación
La diferencia de este nivel aplicado ahora en una arquitectura de tres capas es que solo tiene que trabajar con la semántica propia de aplicación, sin tener que preocuparse de cómo esta implementado este ni de su estructura física.
·         Nivel de dominio de la aplicación.
En cambio este nivel se encarga de toda la estructura física y el dominio de aplicación.
algo muy importante y que es la mayor ventaja de esta arquitectura es que ahora únicamente se cambia la regla en el servidor de aplicación y esta actuará en todos los clientes, cosa que ni sucedía con la arquitectura en dos capas que si alguna regla se la cambia, se tenía que ir a cada cliente a realizar el cambio.
·         Nivel de repositorio.
Sigue siendo la capa en donde se almacenan los datos y toda la información.
Las herramientas para el desarrollo de tres capas son:
• Visual Basic en lo que se refiere a la capa de aplicación
• SQL server en lo que se refiere al repositorio de datos.
• MTS en lo que se refiere al nivel del dominio de aplicación

Aplicaciones de n capas
En una aplicación distribuida en n-capas los diferentes procesos están distribuidos en diferentes capas no sólo lógicas, sino también físicas. Los procesos se ejecutan en diferentes equipos, que pueden incluso residir en plataformas o sistemas operativos completamente distintos. cada equipo posee una configuración distinta y está optimizado para realizar el papel que le ha sido asignado dentro de la estructura de la aplicación, de modo que tanto los recursos como la eficiencia global del sistema se optimicen.



El surgimiento de la tecnología de componentes distribuidos es la clave de las arquitecturas de n-capas. Estos sistemas de computación utilizan un número variable de componentes individuales que se comunican entre ellos utilizando estándares predefinidos y frameworks de comunicación.

Citas de Autor:
·         http://es.wikipedia.org/wiki/Cliente-servidor
·         http://www.monografias.com/trabajos24/arquitectura-cliente-servidor/arquitectura-cliente-servidor.shtml
·         https://laurmolina7821.wordpress.com/1-1-3-aplicaciones-de-2-3-y-n-capas/
·         http://alog78503.blogspot.mx/2013/02/121-aplicaciones-de-23-y-n-capas_25.html


Arquitectura web


Una arquitectura simplificada del web, es una típica arquitectura cliente/servidor, en el cual de un lado se encuentra el cliente que está compuesto de browsers web, capaces de mostrar y solicitar documentos sobre una red. Opcionalmente, el cliente puede estar acompañado por aplicaciones externas usando una presentación del documento, o parte de este. El otro lado de la arquitectura web hace de servidor, compuesto por el servidor web, cuya función es atender los pedidos del cliente web por documentos almacenados en el sistema de archivos de la plataforma donde se encuentra instalado.
Una importante característica del web es que el fue proyectado para funcionar en topología de Internet, está compuesta por una gran variedad de computadoras que interactúan entre si. Internet tiene un espacio global y se comunica por canales públicos de comunicación sin restricción cundo es continuo. De esta forma el web incorpora naturalmente la característica de ser un ambiente distribuido y multiplataforma.

Otras características importantes del web es que está basado en tres patrones abiertos que son:

Transferir información: para desarrollar el transporte de información entre el servidor y el cliente web fue propuesto un protocolo de información denominado http, cuya principal característica es ser un protocolo abierto y especializado en la trasmisión de documentos web sobre Internet. Este protocolo proporciona la eficiencia y velocidad que necesita el sistema de información distribuido en el web.
Descripción de la información: para la prestación de documentos en el web se utiliza el lenguaje HTML (HiperText Markup Language) que permite estructurar los documentos web, usando vínculos hacia otros documentos y recursos de Internet. El lenguaje html está compuesto por un conjunto de elementos denominados tags que permiten al usuario especificar la estructura de un documento web.

Localización de información: para la identificación y localización de documentos web distribuidos por Internet se utiliza el formato URL (Uniform Resource Locator) Donde el protocolo indica el tipo de recurso de Internet que debe ser usado para la conexión con el servidor, que puede ser entre otros HTTP, FTP, NEWS, WAIS y FILE.
  • El host: es el nombre de la maquina a la cual desea conectarse.
  • El path: es la lista de directorios separados por barras.
  • Doc: es el nombre del documento o programa a ser ejecutado.
  • Localización: es una marca textual opcional de posición del documento.


Citas De Autor:

  • http://luisf.wikispot.org/Arquitectura_web 
  • http://www.inteligenciaweb.com/diseno-paginas-web/arquitectura-web.htm