0% encontró este documento útil (0 votos)
10 vistas25 páginas

Missi DWFS Tema 7

Descargar como pdf o txt
Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1/ 25

TEMA 7

Sistemas centralizados y distribuidos


ÍNDICE

1. ¿Qué tipo de sistema elegimos?


2. Sistemas centralizados
3. Sistemas distribuidos
1/
¿Qué tipo de sistema elegimos?
Tipos de sistemas

Tipos de sistemas

• A la hora de diseñar la arquitectura de una aplicación o sistema debemos elegir


qué tipo de sistema vamos a usar.

• Centralizado: Todo el procesamiento se ubica en un único componente.


• Distribuido: El procesamiento se ubica en varios componentes.

• Además, tenemos más factores que explorar… como el coste $$ de desarrollo,


mantenimiento, seguridad…

4
1/
Sistemas centralizados
Sistemas centralizados

¿Qué es un sistema centralizado?

• Las capas de UI, lógica de negocio, acceso a datos… se encuentran combinadas en


un único programa o plataforma, denominado núcleo o core.

• Comúnmente, se denominan “monolitos”. A menudo son productos comerciales de


empresas de software.

• Totalmente autocontenidos e independientes.

6
Sistemas centralizados: Ventajas

Capacidad de administración mayor


Dado el reducido número de componentes que forman el sistema.

Seguridad y estabilidad
Es más fácil securizar un componente que varios.

Esfuerzo de desarrollo y mantenimiento

7
Sistemas centralizados: Desventajas

Sistemas rígidos
El coste de cambio interno suele ser elevado.

Escalado únicamente vertical


No es posible un escalado horizontal.

SPF
Puntos únicos de fallo. Inevitables, pero debemos tratar de tener el menor número posible.

8
Sistemas centralizados: MVC

Patrón MVC: Modelo, Vista y Controlador

• Combina tres piezas diferentes que trabajan de forma conjunta.

• El objetivo es modularizar el código, pero el sistema sigue siendo monolítico. El


código es más flexible y reutilizable. Se puede dividir el trabajo de programación.

9
Sistemas centralizados: MVC

Modelo

• Modelo: Hace referencia a los datos que la aplicación maneja y al acceso a los
mismos. También se incluye aquí la lógica de negocio.

10
Sistemas centralizados: MVC

Vista

• Vista: Es la capa con la que el usuario interactúa. Presenta la información recibida


del modelo, a través del controlador, al usuario.

• Normalmente, HTML, CSS, JS pero también puede haber archivos.

11
Sistemas centralizados: MVC

Controlador

• Controlador: Solicita información al modelo y la traslada a la vista. No realiza


ningún tipo de lógica de negocio. Supervisa el orden de ejecución de las diferentes
peticiones que recibe.

• Sí debe realizar ciertas tareas de control como:


• ¿Quién puede acceder a los datos?
• ¿Quién puede modificar los datos?

12
2/
Sistemas distribuidos
Sistemas distribuidos

¿Qué es un sistema distribuido?

• Las diferentes capas de la aplicación (frontales, back-end, capa de persistencia…)


se encuentran separadas físicamente y conectadas a través de la red (ya sea
pública o privada)

• Los diferentes elementos del sistema se comunican mediante algún mecanismo de


paso de mensajes (SOAP, REST, colas…)

14
Sistemas distribuidos: Ventajas

Concurrencia real / paralelismo


Debido a la ausencia de un reloj global.

Escalabilidad vertical y horizontal


Se puede elegir la opción que más convenga.

Independencia de hardware
Debido al paso de mensajes, se ofrece agnosticidad tecnológica.

15
Sistemas distribuidos: Desventajas

Gran complejidad de diseño


Así como de implementación y configuración.

Mayor inversión en seguridad


Dado el elevado número de componentes que ahora ostentan la lógica del negocio.

Mayor esfuerzo de mantenimiento


Inherente al mayor número de componentes a tratar.

16
Sistemas distribuidos: Cliente - Servidor

Patrón Cliente - Servidor

• Modelo de sistema distribuido clásico.

• Dos nodos, cliente y servidor, que se comunican a través de servicios web o APIs
REST

• Procesamiento habitualmente síncrono.

17
Sistemas distribuidos: Editor - Suscriptor

Patrón Editor - Suscriptor

• Modelo de sistema distribuido clásico.

• N máquinas editoras (producen mensajes) y N máquinas suscriptoras (reciben


mensajes). Estados dinámicos.

• Uso de topics. Procesamiento asíncrono.

18
Sistemas distribuidos: Microservicios

¿Por qué surgen los microservicios?

• Los sistemas centralizados no escalaban bien horizontalmente.

• Los sistemas distribuidos clásicos no satisfacen necesidades como la separación


de lógica de negocio o escalabilidad parcial.

• En base a esas necesidades surgen los microservicios.

• Un microservicio es un servicio especializado en resolver un problema concreto y


que se desarrolla, despliega y mantiene de forma totalmente independiente del
resto de componentes del sistema distribuido.

19
Sistemas distribuidos: Microservicios

Características principales

20
Sistemas distribuidos: Microservicios

Elementos imprescindibles

• Componentes imprescindibles cuándo trabajamos con microservicios:

• Servicio de registro o descubrimiento (Ips dinámicas y nombres).

• Balanceadores de carga (ligado al servicio de registro).

• Servidor de configuración.

• Servidor perimetral (punto de acceso externo).

• Gestión de logs (a nivel global y de petición).

21
Sistemas distribuidos: Microservicios

¿Qué vamos a aprender?

22
Lenguaje de programación Java

Recursos Audiovisuales Importantes

08.01 a 08.04
Conceptos básicos de Java

23
¿DUDAS?
Gracias

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy