Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Guía rápida: Topologías de Arquitectura

Guía rápida: Topologías de Arquitectura

Si quieres tener una pequeña guía visual de las topologías de arquitectura más habituales, descarga este documento.

Jose María Flores Zazo

November 15, 2021
Tweet

More Decks by Jose María Flores Zazo

Other Decks in Technology

Transcript

  1. Guía Rápida:
    Topologías de Arquitecturas

    View Slide

  2. Bienvenidos
    Acerca de…
    ¡Hola! Gracias por entrar en la
    “Guía Rápida: Topologías de Arquitecturas”.
    Espero poder aportarte los conocimientos mínimos y necesarios
    con este workshop para que puedas ponerlo en práctica.
    Jose María Flores Zazo, autor

    View Slide

  3. Presentación
    Introducción
    Este documento ofrece una Guía Rápida para que con un vistazo rápido tengas una vista general del tema que se esta
    tratando en ella.
    Contenido:
    • Topologías de Monolitos
    – Arquitectura de capas
    – Arquitectura de tuberías (pipes)
    – Arquitectura de microkernel
    • Topologías Distribuidas
    – Arquitectura basada en servicios (Service-Based)
    – Arquitectura conducida por eventos (Event-Driven):
    – Request Based
    – Message Broker
    – Mediator
    – Arquitectura basada en el espacio (SBA)
    – Arquitectura orientada a servicios (SOA)
    – Arquitectura de microservicios.
    Cada página contiene una definición y un cuadro resumen de características con una puntuación sobre 5 (1 es la más
    baja y 5 la más alta).
    Guías Rápidas –15 minutos para repasar las topologías de arquitectura

    View Slide

  4. Arquitectura de Capas
    Monolitos
    Capa de Presentación
    Capa de Negocio
    Capa de Persistencia
    Capa de Datos
    Solicitud
    Características Puntuación
    Desplegar
    Elasticidad
    Evolutiva
    Tolerancia a fallos
    Modularidad
    Coste total
    Rendimiento
    Fiabilidad
    Escalabilidad
    Simpleza
    Testeable

    View Slide

  5. Arquitectura de Tuberías (Pipes)
    Monolitos
    Características Puntuación
    Desplegar
    Elasticidad
    Evolutiva
    Tolerancia a fallos
    Modularidad
    Coste total
    Rendimiento
    Fiabilidad
    Escalabilidad
    Simpleza
    Testeable
    Filtro Filtro Filtro
    Filtro
    Filtro
    Pipe Pipe
    Pipe
    Pipe
    Los pasos del Pipe pueden ser de 1 a N.

    View Slide

  6. Arquitectura de Microkernel
    Monolitos
    Características Puntuación
    Desplegar
    Elasticidad
    Evolutiva
    Tolerancia a fallos
    Modularidad
    Coste total
    Rendimiento
    Fiabilidad
    Escalabilidad
    Simpleza
    Testeable
    Base
    de Datos
    Base
    de Datos
    Base
    de Datos
    Plugin
    Componente
    Plugin
    Componente
    Sistema
    Core
    Plugin
    Componente
    Plugin
    Componente
    Plugin
    Componente
    UI
    Core
    Plugin
    Componente
    Es un modelo muy ampliado, se puede simplificar. Puede ser de 0 a N componentes y de 1 a N bases de datos. El UI puede ser de 1 a N.

    View Slide

  7. Arquitectura Basada en Servicios (Service-Based)
    Distribuidos
    Características Puntuación
    Desplegar
    Elasticidad
    Evolutiva
    Tolerancia a fallos
    Modularidad
    Coste total
    Rendimiento
    Fiabilidad
    Escalabilidad
    Simpleza
    Testeable
    Componente
    Componente
    Componente
    Componente
    Componente
    Componente
    Componente
    Componente
    Componente
    Componente
    Base de Datos Base de Datos Base de Datos
    Capa de API (Proxy o Gateway)
    UI
    UI
    Es un modelo ampliado. Lo ideal es no saltarse capas y tener una arquitectura homogénea. Entiende que por ejemplo el API no puede esta, que puede ser de 1 a N y se
    debe intentando ser SOLID (caso del acceso a datos)

    View Slide

  8. Arquitectura Orientada a Eventos (Event-Driven): Request Based
    Distribuidos
    Características Puntuación
    Desplegar
    Elasticidad
    Evolutiva
    Tolerancia a fallos
    Modularidad
    Coste total
    Rendimiento
    Fiabilidad
    Escalabilidad
    Simpleza
    Testeable
    Procesado de Request
    Componente
    Componente
    Estado
    Request
    Procesado de Request
    Componente
    Componente
    Estado
    Request
    Procesado de Request
    Componente
    Componente
    Estado
    Request
    Base de Datos
    Orquestado de Request
    Estado
    Request
    Solicitud
    (Request)

    View Slide

  9. Arquitectura Orientada a Eventos (Event-Driven): Message Broker
    Distribuidos
    Características Puntuación
    Desplegar
    Elasticidad
    Evolutiva
    Tolerancia a fallos
    Modularidad
    Coste total
    Rendimiento
    Fiabilidad
    Escalabilidad
    Simpleza
    Testeable
    Procesado de Eventos
    Componente
    Componente
    Canal Evento
    Canal Evento
    Canal Evento
    Procesado de Eventos
    Componente
    Componente
    Procesar
    Evento
    Procesado de Eventos
    Componente
    Componente
    Procesar
    Evento
    Procesado de Eventos
    Componente
    Componente
    Procesado de Eventos
    Componente
    Componente
    Evento
    Inicio

    View Slide

  10. Arquitectura Orientada a Eventos (Event-Driven): Mediator
    Distribuidos
    Características Puntuación
    Desplegar
    Elasticidad
    Evolutiva
    Tolerancia a fallos
    Modularidad
    Coste total
    Rendimiento
    Fiabilidad
    Escalabilidad
    Simpleza
    Testeable
    Procesado de Eventos
    Componente
    Componente
    Procesado de Eventos
    Componente
    Componente
    Procesado de Eventos
    Componente
    Componente
    Evento
    Inicio
    Mediador de Eventos
    Procesado de Eventos
    Componente
    Componente
    Cola Evento
    Canal Evento Canal Evento Canal Evento Canal Evento

    View Slide

  11. Arquitectura Basada en el Espacio (SBA)
    Distribuidos
    Características Puntuación
    Desplegar
    Elasticidad
    Evolutiva
    Tolerancia a fallos
    Modularidad
    Coste total
    Rendimiento
    Fiabilidad
    Escalabilidad
    Simpleza
    Testeable
    Base de Datos
    Data Grid en Memoria
    Cache
    Componente Componente
    Motor de replicación de datos
    Unidad de Proceso
    Data Grid en Memoria
    Cache
    Componente Componente
    Motor de replicación de datos
    Unidad de Proceso
    Data Grid en Memoria
    Cache
    Componente Componente
    Motor de replicación de datos
    Unidad de Proceso
    Middleware Virtual
    Administrador de despliegue
    Red de procesado
    Red de Datos
    Red de Mensajería
    Lectura de datos
    Escritura de datos

    View Slide

  12. Arquitectura Orientada al Servicio (SBO)
    Distribuidos
    Características Puntuación
    Desplegar
    Elasticidad
    Evolutiva
    Tolerancia a fallos
    Modularidad
    Coste total
    Rendimiento
    Fiabilidad
    Escalabilidad
    Simpleza
    Testeable
    Enterprise Service Bus
    Motor de Orquestación
    Hub de Integración
    Servicios Empresariales
    SE SE SE
    SE SE
    Servicios de Aplicación
    SA SA
    Servicios de Infraestructura
    SI SI
    Servicios de Negocio
    SN SN SN
    SN SN

    View Slide

  13. Arquitectura de Microservicios
    Distribuidos
    Características Puntuación
    Desplegar
    Elasticidad
    Evolutiva
    Tolerancia a fallos
    Modularidad
    Coste total
    Rendimiento
    Fiabilidad
    Escalabilidad
    Simpleza
    Testeable
    Servicio
    Modulo
    Modulo
    Base de Datos
    Servicio
    Modulo
    Modulo
    Base de Datos
    Servicio
    Modulo
    Modulo
    Base de Datos
    Servicio
    Modulo
    Modulo
    Base de Datos
    Servicio
    Modulo
    Modulo
    Base de Datos
    Servicio
    Modulo
    Modulo
    Base de Datos
    Servicio
    Modulo
    Modulo
    Base de Datos
    Servicio
    Modulo
    Modulo
    Base de Datos
    Capa de API
    Request del Clientes Request del Clientes Request del Clientes

    View Slide

  14. ¡Gracias!
    Puedes encontrarme buscando por jmfloreszazo en
    https://jmfloreszazo.com

    View Slide