Tema 5. Servicios en red
Los servicios son programas auxiliares utilizados en un sistema para gestionar una colección de recursos y prestar su funcionalidad a los usuario y aplicaciones.
El acceso a los servicios está formado por el conjunto de operaciones que ofrece, por ejemplo, un servicio de archivos ofrece operaciones de lectura, escritura y borrado de ficheros.
Todos los servicios de Internet implementan una relación cliente-servidor. Existen multitud de librerías para trabajar con los servicios más comunes. En esta unidad nos vamos a centrar en el servicio FTP (transferencia de archivos), SMTP (envío de emails) y POP3/IMAP (lectura de emails).
Además, hay otras aproximaciones, también basadas en la arquitectura cliente-servidor que permiten ofrecer acceso a los sistemas. Entre los más utilizados, está lo que se denomina API Rest, que no deja de ser un servicio sobre HTTP que permite interactuar con el backend de los sistemas, de forma independiente a la arquitectura y lenguajes utilizados en el frontend.
Nosotros vamos a analizar en esta unidad otras aproximaciones como los sistemas de colas, basados en el protocolo MQ, o los sistemas serverless que ofrecen las principales plataformas de computación en la nube (Azure Functions, AWS Lambda y Google Cloud Functions).
Objetivos
Objetivos de esta unidad:
- Utilizar librerías Java para usar los protocolos de aplicación más importantes de TCP/IP.
- Probar servicios de comunicación en red.
- Permitir operaciones en la nube de forma sencilla.
- Crear aplicaciones que permitan una comunicación asíncrona entre clientes y entre clientes y servidores.