Sistemas Distribuidos: Ejercicio de los temas arquitectura y comunicación en los sistemas distribuidos

Marzo del 2016.

Grupo de mañana.

La empresa SoftStore proporciona un servicio de distribución de aplicaciones destinado a dos tipos de personas: usuarios de las aplicaciones y desarrolladores de las mismas, organizados en equipos de desarrollo. Los usuarios instalan un programa U que proporciona las siguientes operaciones: (OP1) Búsqueda de aplicaciones basada en los criterios especificados por el usuario (nombre de la aplicación, equipo de desarrollo, temática, precio,...) mostrándose los resultados de la consulta paginados con botones para acceder a la página siguiente y anterior de los mismos; (OP2) Descarga e instalación de la aplicación seleccionada, tal que una vez instalada se muestra una ventana popup cada vez que hay una nueva versión de dicha aplicación por si el usuario quiere actualizarla; (OP3) Desinstalación de una aplicación; (OP4) Activación de un servicio de alertas que permite al usuario que lo activa conocer cuándo el equipo de desarrollo seleccionado publica una nueva aplicación (nueva, es decir, la primera versión de la aplicación) mostrándose una ventana popup para indicarlo y permitir descargarla e instalarla si lo considera oportuno. Los desarrolladores instalan un programa D que proporciona las siguientes operaciones: (OP5) Crear una nueva aplicación; (OP6) Actualizar una aplicación (es decir, crear una nueva versión de la misma). En la empresa está instalado el módulo software S. El servicio está implementado mediante un esquema cliente/servidor para las búsquedas, cargas y descargas, y dos esquemas editor/subscriptor independientes para el control de actualizaciones y las alertas de nuevas aplicaciones.
  1. ¿Qué módulos realizan el papel de subscriptores en el control de actualizaciones?
    1. U
    2. D
    3. U y D
    4. S
  1. ¿Qué módulos realizan el papel de editores en el control de actualizaciones?
    1. D
    2. U
    3. U y D
    4. S
  1. ¿Qué módulos realizan el papel de subscriptores en el servicio de alertas?
    1. U
    2. D
    3. U y D
    4. S
  1. ¿Qué módulos realizan el papel de editores en el servicio de alertas?
    1. D
    2. U
    3. U y D
    4. S
  1. ¿Qué acción implica OP2?
    1. subscripción
    2. baja
    3. publicación
    4. notificación
  1. ¿Qué acción implica OP3?
    1. baja
    2. subscripción
    3. publicación
    4. notificación
  1. ¿Qué acción implica OP4?
    1. subscripción
    2. baja
    3. publicación
    4. notificación
  1. ¿Qué acción implica OP5?
    1. publicación
    2. baja
    3. subscripción
    4. notificación
  1. ¿Qué acción implica OP6?
    1. publicación
    2. baja
    3. subscripción
    4. notificación
  1. ¿Qué acción implica el popup de actualizaciones?
    1. notificación
    2. baja
    3. subscripción
    4. publicación
  1. ¿Qué acción implica el popup de alertas?
    1. notificación
    2. baja
    3. subscripción
    4. publicación
  1. ¿Cuántos temas existen en el esquema editor/subscriptor que gestiona las actualizaciones?
    1. Uno por cada aplicación
    2. Uno por cada usuario
    3. Uno por cada equipo de desarrollo
    4. Uno por cada actualización
  1. ¿Cuántos temas existen en el esquema editor/subscriptor que gestiona las alertas?
    1. Uno por cada equipo de desarrollo
    2. Uno por cada usuario
    3. Uno por cada aplicación
    4. Uno por cada actualización
  1. Se están valorando dos implementaciones del mecanismo de paginación de las respuestas: cuando se pulsa el botón siguiente o anterior, se envía en el mensaje (1) un parámetro que indica si se pide la siguiente o la anterior, respectivamente, o bien (2) el número absoluto de la página requerida. ¿Qué solución (i) proporciona mayor tolerancia a los reinicios del servidor y cuál (ii) facilita el reparto de carga entre servidores si se usa un esquema de múltiples servidores en S?
    1. (2)(2)
    2. (1)(1)
    3. (1)(2)
    4. (2)(1)
  1. La descarga de una aplicación toma un tiempo considerable y durante la misma puede perderse la conectividad con la empresa, sobretodo si el usuario utiliza un dispositivo móvil. Ante este problema, cuando se recupera la conectividad, se usa una petición GET de HTTP con rangos que permite solicitar un determinado intervalo de bytes de un recurso web. ¿Se trata de una operación (i) idempotente, (ii) que requiere estado en el servidor?
    1. sí; no
    2. no; sí
    3. no; no
    4. sí; sí
  1. Suponiendo que se usa un esquema de leasing para mejorar la tolerancia a fallos del esquema editor/subscriptor de alertas, ¿qué módulos deben renovar el lease?
    1. U
    2. D
    3. U y D
    4. S
  1. Se plantea usar un esquema con un filtro de eventos por contenido en vez de un filtro por temas para el sistema de alertas. ¿Para cuál de estos casos ese cambio sería más ventajoso en el sentido de reducir el número de mensajes recibidos pero no deseados?
    1. Interés en cuando se publica una aplicación de una determinada temática.
    2. Interés en cualquier nueva aplicación.
    3. Interés en cuando un determinado equipo de desarrollo crea aplicaciones de un conjunto de temáticas.
    4. Interés en cuando cualquiera de un conjunto de equipos de desarrollo crea aplicaciones de una determinada temática.

Las siguientes preguntas corresponden al tema de comunicación y, por tanto, no entran en este curso

  1. Suponga un sistema de comunicación en grupo causal con 4 procesos (de P1 a P4) donde P2 tiene un vector (2,2,2,2) y recibe un mensaje M de P3 con un vector (4,0,4,1). ¿Cuántos mensajes adicionales tiene que recibir antes de entregar M?
    1. 3
    2. 2
    3. 4
    4. 5
  1. ¿Qué es cierto con respecto a un sistema de serialización que proporciona un esquema de unmarshalling genérico: (i) consume menos ancho de banda; (ii) es más eficiente?
    1. Ninguna.
    2. (i)
    3. (ii)
    4. Ambas.
  1. ¿Cuántas de las siguientes afirmaciones sobre qué situación se produce cuando se completa una llamada send sobre un socket son ciertas: (i) el programa puede reutilizar el buffer del mensaje inmediatamente; (ii) el mensaje ha llegado al nodo receptor pero todavía no ha sido entregado al proceso destinatario; (iii) el mensaje ha sido entregado al proceso destinatario?
    1. 1
    2. 2
    3. 3
    4. 0