Volver a Desarrollo
Arquitectura cliente/servidor y multicapa, servicios web
Cómo se reparte una aplicación entre máquinas y entre capas, y cómo se comunican esas piezas entre sí: el modelo cliente/servidor, las arquitecturas de dos, tres y n capas, y los servicios web (SOAP, WSDL, UDDI, REST, GraphQL y gRPC) con su seguridad.
- 1Contexto del temaCómo se reparte una aplicación entre máquinas y entre capas, y cómo se hablan esas piezas entre sí por la red con servicios web.2
- 2Cliente/servidorEl reparto de una aplicación entre quien pide y quien sirve: roles, cliente ligero y cliente pesado, middleware, qué se gana y qué se paga, y los cinco modelos de distribución de Gartner.7
- 3La arquitectura multicapaQué es una capa, en qué se diferencia de un nivel físico, qué contiene la presentación, la lógica de negocio y la persistencia, y qué se gana pasando de dos a tres y a n capas.7
- 4Qué es un servicio webQué es un servicio web y de dónde viene, las familias que conviven hoy, la pila clásica de la W3C y OASIS con el perfil WS-I, el registro UDDI y el lenguaje de descripción WSDL.8
- 5SOAPEl protocolo de mensajería XML de los servicios web clásicos: cómo viaja, qué forma tiene el sobre, cómo devuelve los errores, y las extensiones de seguridad y de datos binarios.8
- 6RESTEl estilo de arquitectura que hoy domina las APIs: recursos identificados por URI, verbos HTTP, códigos de estado, ausencia de estado en el servidor y navegación por hipermedia.8
- 7SOAP frente a RESTLa comparación que siempre cae: protocolo contra estilo, contrato obligatorio contra documentación, y en qué escenario conviene cada uno, con las APIs de Java de cada familia.8
- 8Seguridad: OAuth y JWTCómo se protege una API que no guarda sesión: TLS para el canal, HTTP Basic, OAuth 2.0 para delegar la autorización, y JWT con su estructura y sus claims.7
- 9SOA, GraphQL y gRPCLa arquitectura orientada a servicios y su bus de integración, y las dos respuestas modernas a las limitaciones de REST: GraphQL para que el cliente elija los datos, y gRPC para las llamadas internas rápidas.7