DISEÑO DE ARQUITECTURAS .NET ORIENTADAS A MICROSERVICIOS

DISEÑO DE ARQUITECTURAS .NET ORIENTADAS A MICROSERVICIOS

SERRANO VALERO, RAMON

28,50 €
IVA incluido
Stock en librería
Editorial:
MARCOMBO EDITORIAL
Año de edición:
2021
ISBN:
978-84-267-3423-5
Páginas:
340
Encuadernación:
No especificado
Materias:
Colección:
SIN COLECCION
28,50 €
IVA incluido
Stock en librería

Introducción......................................................................................................................................... 1
Motivación............................................................................................................................................. 3
Arquitectura software.................................................................................................................. 5
Principios solid................................................................................................................................... 17
S: Principio de responsabilidad única (SRP)............................................................. 18
O: Principio abierto/cerrado (OCP)................................................................................. 21
L: Principio de sustitución de Liskov (LSP)............................................................... 28
I: Principio de segregación de interfaces (ISP)....................................................... 32
D: Principio inversión de dependencias (DIP)....................................................... 35
Beneficios de aplicar SOLID.................................................................................................. 39
Proyecto web API base con .NET 5...................................................................................... 41
Puntos de inicio de la aplicación....................................................................................... 44
Ficheros de configuración appsettings......................................................................... 46
Inyección de dependencias en .NET 5............................................................................. 57
¿Cómo se definen las dependencias que inyectamos?..................................... 61
Ejemplo inyección de dependencias.............................................................................. 62
Patrón Repository............................................................................................................................ 69
AutoMapper.......................................................................................................................................... 83
LOG ........................................................................................................................................................... 93
Autenticación JWT (JSON web token)............................................................................. 105
Autenticación.................................................................................................................................. 109
Autorización de recursos......................................................................................................... 115
Acceso anónimo a recursos................................................................................................... 122
Obtención de información del usuario......................................................................... 124
Autorización basada en roles............................................................................................... 129
Middleware............................................................................................................................................ 133
Obtención valor de un middleware................................................................................. 138
CQRS: Command query responsibility segregation......................................................... 143
MediatR: Patrón MediatR.......................................................................................................... 147
Docker........................................................................................................................................................ 165
Comandos.......................................................................................................................................... 168
Versión Docker....................................................................................................................... 168
Listar imágenes de Docker............................................................................................ 169
Descargar imagen................................................................................................................. 170
Crear un contenedor......................................................................................................... 172
Listar contenedores............................................................................................................ 173
Acceso CLI a contenedor................................................................................................ 174
Contenedor Cassandra..................................................................................................... 174
Volúmenes................................................................................................................................. 176
Eliminar contenedor.......................................................................................................... 178
Eliminar una imagen......................................................................................................... 180
Proyecto de microservicios...................................................................................................... 183
Microservicio de autenticación.......................................................................................... 184
Contenedor Cassandra..................................................................................................... 185
Creación de microservicio de autenticación................................................... 187
Capa dominio - ms.users.domain............................................................................ 188
Capa infraestructura - ms.users.infrastructure............................................. 189
Capa aplicación ? ms.users.application.............................................................. 195
Capa presentación - ms.users.api............................................................................ 205
Dockerizar microservicio................................................................................................ 211
Microservicio registro de asistencia de empleados............................................. 223
Capa dominio - ms.employees.domain............................................................... 231
Capa infraestructura - ms.employees.infrastructure................................ 232
Capa aplicación - ms.employees.application.................................................. 241
Capa presentación - ms.employees.api............................................................... 249
Dockerizar microservicio................................................................................................ 254
Microservicio histórico de asistencia laboral........................................................... 262
Contenedor MongoDB..................................................................................................... 263
Creación de microservicio histórico de asistencia laboral.................... 269
Capa dominio - ms.attendances.domain........................................................... 271
Capa infraestructura - ms.attendances.infrastructure............................. 272
Capa aplicación - ms.attendances.application............................................... 276
Capa presentación - ms.attendances.api............................................................ 281
Dockerizar microservicio................................................................................................ 285
Comunicación entre los microservicios...................................................................... 291
Comunicación basada en eventos - RabbitMQ.............................................. 291
Comunicación Http............................................................................................................ 296
Arquitectura con comunicaciones RabbitMQ y HTTP.............................. 297
Incorporación de RabbitMQ......................................................................................... 298
Productor - Evento empleado creado.................................................................... 303
Consumidor - Evento empleado creado.............................................................. 305
Productor - Evento asistencia empleado modificada................................ 309
Consumidor - Evento asistencia empleado modificada.......................... 312
Comunicación HTTP - Desde microservicio de empleados al
de asistencias.......................................................................................................................... 316
Creación de un contenedor RabbitMQ en Docker...................................... 320
Interfaz de RabbitMQ....................................................................................................... 322
Probar la comunicación de los microservicios............................................... 323
Reflexiones finales........................................................................................................................... 327

La mejor arquitectura es aquella que resuelve su problema de software. Ahora, tiene a su disposición el manual con el que aprender a diseñar, de forma sencilla y autónoma, arquitecturas basadas en microservicios. Gracias a este libro, dejará atrás los contratiempos al trabajar con monolitos, como el alto acoplamiento dentro de un mismo sistema o la baja escalabilidad al resolver con la misma arquitectura distintos problemas. Asimismo, aprenderá alternativas que le permitirán aplicar distintas soluciones a multitud de cuestiones y sabrá distinguir cuándo es mejor orientar su arquitectura a microservicios y cuándo mantener su monolito. 1. Conocerá los fundamentos de desarrollo .NET. 2. Construirá cada módulo de que se compone una arquitectura con .NET. 3. Aplicará seguridad a su arquitectura mediante la autenticación y autorización JWT. 4. Sabrá cuándo aplicar una arquitectura monolítica o una orientada a microservicios. 5. Será capaz de modelar arquitecturas limpias cumpliendo la regla de dependencia. 6. Diseñará una arquitectura de microservicios usando distintas tecnologías en cada una. 7. Aprenderá los dis

Artículos relacionados

  • DISEÑO DE ARQUITECTURAS .NET ORIENTADAS A MICROSERVICIOS
    SERRANO VALERO, RAMON
    La mejor arquitectura es aquella que resuelve su problema de software. Ahora, tiene a su disposición el manual con el que aprender a diseñar, de forma sencilla y autónoma, arquitecturas basadas en microservicios. Gracias a este libro, dejará atrás los contratiempos al trabajar con monolitos, como el alto acoplamiento dentro de un mismo sistema o la baja escalabilidad al resolve...
    Stock en librería

    28,50 €