Arquitectura cliente-servidor
Arquitectura Cliente-Servidor
Introducción.
El modelo o arquitectura cliente-servidor surgió junto con la nueva posibilidad de utilizar las computadoras para comunicarse. Para esto tuvieron que pasar varios años y mucho avance respecto a la tecnología referente a los equipos de cómputo.Como arquitectura se entiende que se tiene un sistema donde se ven involucrados dos o más componentes, y que cada uno de estos se relaciona de una manera específica, premeditada y bajo ciertas normas preestablecidas con el otro u otros partes del sistema. En esta arquitectura en particular se ven involucradas dos partes: el cliente, que en la mayoría de las veces cumple el papel del que solicita algo, y el servidor, que es el que decide cómo cumplirlo y regresar el mensaje con dicha acción, así mismo los clientes también pueden actuar como servidores de otros clientes, lo que vuelve a la arquitectura un sistema más complicado que una simple mensajería de uno a otro.
Desarrollo.
La arquitectura cliente-servidor, visto de manera sencilla, es parecido a la comunicación humana, donde existe un emisor (el cliente) que manda un mensaje, en un código que ambos puedan entender y a través de un medio común (las redes de computo), a un receptor (el servidor), el receptor asimila el mensaje, lo procesa, formula una respuesta y manda el mensaje de vuelta al que había sido el emisor anteriormente. Para que este proceso pueda ser efectuado de la manera correcta, es necesario que, tanto los componentes como el modelo en sí, cumplan con ciertas características.
Cliente: "Conjunto de software y hardware que involucra servicios de uno o varios servidores"
- Asume el papel del emisor al ordenar una petición al servidor o demandar un servicio al servidor sabiendo que recibirá una respuesta a la misma. En la gran mayoría de las ocasiones, esta petición es dada originalmente por un usuario, es decir, una persona que está manipulando aquella máquina que funge como cliente, por lo que este componente debe estar diseñado para poder interactuar con un humano.
- En ocasiones puede cambiar su rol y hacer de servidor
- Usualmente suele realizar las peticiones al servidor por medio de los RPC, es decir, un método que originalmente se ejecuta en un equipo diferente al cliente del que se está tratando y que lo utiliza para transmitir la acción que necesita.
- Esta diseñado para funcionar como un receptor, pues su papel antes de ninguna otra cosa, es el de esperar y estar listo a que el cliente realize una petición. Una vez que recibe la orden, el servidor se encarga de analizar, procesar, y regresar una respuesta al cliente, aún si esta respuesta es demasiado simple o incluso es una negación a la petición.
- En la mayoría de los casos, los servidores están creados de tal forma que puedan realizar las operaciones demandadas por los clientes de la forma más rápida y eficiente posible, pues son los responsables de que el proceso se efectúe correctamente.
- Un sólo servidor puede atender a uno o mas clientes, pero mientras mas usuarios atiende, menos eficaz es su servicio, y por lo tanto, todos los clientes conectados salen perjudicados.
Una característica de este modelo es que cada uno realiza una tarea diferente, es decir, que funcionan como dos componentes que realizan un proceso específico de manera individual. No por ello cliente y servidor deben de trabajar en diferentes equipos, ambos pueden convivir y trabajar sin ningún inconveniente en la misma computadora, de esta forma ninguna de las partes sufre una exigencia mayor del trabajo, pues cada uno de los componentes se encarga de una fracción del mismo, sin embargo, existen ocasiones en las que a pesar de lo anterior, el modelo puede verse saturado, por lo que alguno de los componentes, casi siempre es el servidor, se verá obligado a rebajar su rendimiento.
También es necesario dentro de esta arquitectura, que exista un medio que tanto el cliente como el servidor compartan para poder comunicarse entre sí, para este propósito existen las redes de cómputo, las cuales se encargan de enlazar a los otros dos componentes, las redes de cómputo que existen son las siguientes:
Según su cobertura:
- PAN
- LAN
- MAN
- WAN
Según su topología:
- Estrella
- Anillo
- Bus
- Jerárquicas
- Hibridas
Conclusión:
La arquitectura cliente-servidor es una herramienta de vital importancia para la comunicación que se utiliza hoy en día, y que en la actualidad, esta presente en todas partes y en todo momento, y que curiosamente, es casi tan sencilla y a la vez compleja como la comunicación que utilizamos los humanos entre nosotros mismos, alguien que habla y alguien que escucha, es obvio que en el medio de la informática es mucho más complicado de lo que parece, pues si se quiere hacer desde el principio, es necesario contar con muchas herramientas y tener bastantes conocimientos acerca del tema, principalmente conocimientos de programación; pero si utilizamos la analogía anterior, es muy fácil que cualquiera que no sepa nada de informática, conozca el funcionamiento de uno de los sistemas omnipresentes de nuestra sociedad.
También debemos de reconocer la importancia y las enormes ventajas que esta arquitectura ha brindado a nuestra sociedad, pues permite que a través de diversos servidores, podamos comunicarnos con nuestros seres queridos o incluso con gente que esta muy lejos de nosotros, así mismo, este modelo nos brinda muchos otros servicios que son muy cotidianos hoy en día, como son los foros de chat, los servicios de música, videos o videojuegos en línea, y un gran etcetera que abarca una infinidad de ámbitos relacionados con la comunicación.
Bibliografía.
May, M. C. (30 de Enero de 2012). Bases
de Datos Distribuidas: Arquitectura Cliente/Servidor. Obtenido de
http://www.tamps.cinvestav.mx/~fpech/ddb/files/slides/cliente.pdf
Pérez, F. L. (14 de Julio de 2010). Desarrollo
de una arquitecutura cliente-servidor. Obtenido de
https://riunet.upv.es/bitstream/handle/10251/13943/Documentacion.pdf?sequence=1
Comentarios
Publicar un comentario