Descargar

Introducción a Java

Enviado por Pablo Turmero


Partes: 1, 2

    edu.red

    1 Indice Programacion cliente servidor Arquitectura Cliente-servidor Definicion de socket Ejemplo C/S Servlets Ejemplo Servlets Arquitectura C/S de 3 capas

    edu.red

    2 JavaProgramación Cliente-Servidor Internet es un sistema Cliente-Servidor gigante La idea primaria es que debe haber un sitio donde descargar la información bajo demanda de los clientes Aquí surge el problema de Internet, cuando hay un solo servidor que atiende a muchos clientes, si se produce un cambio que deba distribuir, El rendimiento general del sistema decrece exponencial al aumento del número de clientes

    edu.red

    3 ProgramaciónCliente-Servidor(II) El funcionamiento del Web sigue este mismo principio El navegador fue el primer paso adelante en la expansión de Internet, permite visualizar un mismo fichero en plataformas diferentes Por contra la interactividad con el usuario, y la posibilidad de ejecutar programas en la parte del usuario, esta muy limitada Se proporcionó al lenguaje HTML de botones de entrada de datos, cajas de selección, etc, pero cuando habían muchos clientes colgando, el colapso del servidor era casi seguro Surgen otras alternativas como los CGI, para descargar al servidor y que el cliente también hiciese algo

    edu.red

    4 El Modelo Cliente – Servidor Arquitectura de sistema distribuido – Clientes: que dan acceso a usuarios a los serviciosServidores: contienen información, servicios, … Cliente y Servidor son roles en una aplicación – Una máquina puede ser cliente en un servicio y servidor en otro Muy extendido en programación distribuida – Utilizando el interfaz de sockets

    edu.red

    5 Arquitectura Cliente-Servidor Aplicaciones modulares, distribuidas y personalizadas. Java permite la extensión más potente de servidores de aplicaciones ¿Cómo?. Cuando se accede a un applet de otro ordenador, el navegador carga la clase principal y va cargando dinámicamente el resto de clases a medida que son necesarias Si alguna clase ya reside en la memoria local, no debera cargarla, incrementa el rendimiento

    edu.red

    6 Arquitectura Cliente-Servidor(II) Gracias a su rigurosa concepción de orientación a objetos, es muy fácil programar aplicaciones modulares Las funciones que deben ser accedidas por un usuario pueden programarse con applets Basta instalar los distintos “módulos” de la aplicación, en un único servidor Los usuarios acceden a las aplicaciones a través de su navegador, personalizarlos y tener interfaces familiares El uso del web en los últimos años perite reducir en forma considerable el proceso de aprendizaje y formación en la aplicación

    edu.red

    7 Arquitectura Cliente-ServidorVentajas Una aplicación de biblioteca se liberaría de la preocupación de instalar las aplicaciones localmente y de actualizar sucesivas versiones Los applets se distribuyen fácilmente por la www, las dificultades de trafico en una red no afectan la funcionalidad de estos, pues ocupan un tamaño no más de 10 o 20 Kb según aplicación. Como se dijo antes no es necesario cargar los applets enteros, y La facilidad de distribución tiene otra ventaja, como es el coste de la aplicación en cuanto a actualizaciones y la de asegurar que todos los clientes tienen la misma versión software

    edu.red

    8 Arquitectura Cliente-ServidorVentajas (II) La independencia de Java con respecto a la plataforma permite que las aplicaciones, funcionen igual en todos los ordenadores El usuario sólo cargará la utilidad específica de la aplicación que necesite Toda la arquitectura que acabamos de explicar hace pensar que tan solo se necesita en el ordenador un navegador sin tener que usar ningún S.O. o configuración hardware preferente

    edu.red

    9 Thin clients (Clientes delgados) A esta arquitectura se le conoce como “thin clients” en contra de los fat clients (“Clientes gruesos”) que utilizan la mayor parte de aplicaciones de gestión Los fat clients necesitan trabajar con un S.O determinado, cantidad de Ram, capacidad de disco, etc.. En esta nueva arquitectura, es más fácil optimizar las presentaciones, ya que los thin clients requieren estaciones menos potentes

    edu.red

    10 ¿Qué es un socket? Un socket es un punto final en un enlace de comunicación de dos vías entre dos programas que se ejecutan en la red. Las clases Socket son utilizadas para representar conexiones entre un programa cliente y otro programa servidor. El paquete java.net proporciona dos clases — Socket y ServerSocket — que implementan los lados del cliente y del servidor de una conexión, respectivamente

    edu.red

    11 Ejemplo de cliente en Java El programa EchoTest, conecta con el Echo del servidor(en el port7)mediante un socket. El cliente lee y escribe a través del socket Echotest envía todo el texto tecleado en su entrada estandar al Echo del servidor, El servidor repite todos los caracteres recibidos en su entrada desde el cliente de vuelta a través del socket al cliente

    edu.red

    12 Ejemplo de cliente en Java (II) Se esteblece la conexión del socket entre el cliente y el servidor y abre un canal de entrada y un canal de salida sobre el socket

    (Se crea el objeto socket) echoSocket = new Socket(“slabii", 7);

    os = new DataOutputStream(echoSocket.getOutputStream()); “Abre un canal de entrada el el socket”

    is = new DataInputStream(echoSocket.getInputStream()); “Abre un canal de salida el el socket”

    Partes: 1, 2
    Página siguiente