Tipos de Servidores:
Orientado a conexión (TCP)à datos no incluyen info. Sobre conexión. Sesiones simultáneas(solo si es concurrente)
No orientado a conexión (UDP)à Se pueden intercalar las sesiones. Datos intercambiados usando paquetes indep. Paquetes autocontenidos, necesitan info. de conexión.No hay acuerdo previo entre Serv y Cli. Usa Datagramas.
Secuencialà 1 único proceso
Concurrenteà 1 único proceso con multihilos(varios clientes simultáneos). Múltiples procesos simples(varios clientes simultáneos. Peor)
Con Estado(FTP)à Debe mantaner las conexiones anteriores y el estado del servicio.
Ventajas: mensajes de petición más cortos,mejor rendimiento,facilita la lectura adelantada,necesario en invalidaciones iniciadas por el servidor.
Sin Estado(NFS)à No mantiene info.del estado. Cada mensaje es indep. de los demás (HTTP). Facilita la implementación del código del servidor.
Ventajas: más tolerante a fallos, no son necesarios open y close. Menos mensajes, No se gasta memoria en el servidor
RMI
Proceso que invoca un método local de otro proceso.Hacer que el software distribuido se programe igual que una app. no distribuida. Simplifica la comunicación entre procesos y la sincronización de eventos.Ofrece: mecanismos para crear servidores y objetos cuyos métodos se pueden invocar remotamente,permiten localizar los objetos remotamente,Servicio de directorios(se ejecuta en la máquina servidor objeto).
1.A llama al procedimiento remoto de B
2.La llamada dispara una acción de un procedimiento de B
3.B devuelve el valor a A.
Ventajas: sencillos, servidor concurrente
Desventajas: sockets con menos sobrecarga, sólo para plataformas JAVA
Arquitectura:
STUB: se encarga de aplanar los parámetros.
Referencia Remota: interpreta y gestiona las referencias a objetos remotos.Invoca operaciones de la capa de transporte.
Transporte: comunicaciones y establece las conexiones necesarias.TCP
HTTP
Métodos: GET,HEAD,POST,PUT
GET/dirI/index.html HTTP/1.0
Problemas Desarrollos en Web: Diversas tecnologías(PHP,ASP),muy centrados en la interacción con la persona.
Servicios WEB
Adaptar el modelo de programación web para el uso en app no basadas en navegador. Objetivo: ejecutar desde diferentes SO,diferentes lenguajes y herramientas,desarrollo independiente.
Ventajas: interoperabilidad,fomentan estándares y protocolos en texto,combinación fácil entre servicios y software.
Desvantajas: no pueden compararse con los estándares de comp.dist, rendimiento bajo al usar formato texto, pueden esquivar firewalls.