Este documento describe dos tipos de aplicaciones distribuidas: aplicaciones cliente-servidor y aplicaciones en n-capas. Las aplicaciones cliente-servidor constan de un proceso en el servidor para procesar datos y un cliente en cada estación de trabajo, mientras que las aplicaciones en n-capas distribuyen procesos en múltiples capas y equipos. Aunque las aplicaciones cliente-servidor son más simples y rápidas, las aplicaciones en n-capas permiten mayor reutilización de código y escalabilidad.
3. Aplicaciones cliente - servidor Existen dos procesos principales: Uno de ellos se encarga de enviar y procesar los datos Se ejecuta en el equipo que maneja la aplicación
4. Sistema Gestor de Base de Batos (SGBD) Microsoft SQL u Oracle Mantiene en el equipo servidor un servicio de red que recoge las peticiones que llegan en forma de sentencia SQL y las transmite al SGBD quien se encarga de seleccionar los registros indicados para ser actualizados o si son resultados se envían de vuelta.
5. Es muy habitual disponer de disparadores, que se ejecutan asociados a sentencias de actualización, estas operaciones son suelen ser de alto rendimiento y hacen que los SGBD operen de manera muy optimizada
6. Clientes de red Estos son proporcionados por el fabricante del SGBD y son específicos para cada SGBD El cliente “sabe” como conectarse al servicio de red del SGBD Si por algún motivo se cambia la SGBD se debe cambiar todas las estaciones de el trabajo
7. La estación de trabajo del cliente consta de una interfaz que le permita solicitar datos, visualizarlos, trabajar con ellos y enviar posibles actualizaciones. Para la manipulación de los datos se envían sentencias SQL
8. Las aplicaciones cliente – servidor tradicionales son la forma mas básica de aplicación distribuida, dada la simplicidad de su arquitectura, su coste es mas bajo que el de una aplicación distribuida en n - capas Hay ventaja en lo que es velocidad pues al tener menos capas los datos pasan de un lado al otro mas rápidamente.
9. DIFICULTADES Cada estación pasa consumiendo recursos del servidor en forma de conexiones abiertas. La conectividad entre la SGBD implica un mayor esfuerzo a la hora de configurar los sistemas con diferentes SGBD La reutilización del código es mínima
10. Se requiere distribuir mucho software entre los equipos cliente Y si tratamos de acceder al servidor mediante internet. Los protocolos de red que usan las SGBD suelen estar cerrados a los cortafuegos. Abrirlos será crear una vulnerabilidad al SGBD.
11. Aplicaciones en n–capas Los procesos están distribuidos en diferentes copas no solo lógicas sino también físicas Los procesos se ejecutan en diferentes equipos, pueden residir en diferentes plataformas
12. Cada equipo posee una configuración distinta y esta optimizado para que rinda en el papel que le hayan asignado
13. Ejemplo El comercio electrónico en Internet Se encontrarían servidor que contienen los datos, cuyo SGBD puede incluir ciertos procedimientos almacenados o disparadores que sean globales a la lógica de la BDD
14. como otra parte se hallaría un equipo que fuera capaz de contener ciertos componente que realicen determinadas reglas de negocio de aplicación, recuperación de datos o la comprobación de seguridad Y tener un equipo que pueda ofrecer los servicios de generación de páginas dinámicas web
15. Las aplicaciones distribuidas ofrecen la solución más optimizada para grandes sistemas que requieren alta concurrencia o máxima reutilización del código. Crear una aplicación en varias capas requiere cierto sobreesfuerzo en términos de diseño y conlleva una cierta perdida de rendimiento frente a las aplicaciones cliente servidor….