DISEÑO DE ARQUITECTURAS.NET ORIENTADAS A MICROSERVICIOS

DISEÑO DE ARQUITECTURAS.NET ORIENTADAS A MICROSERVICIOS

SERRANO VALERO, RAMÓN

28,50 €
IVA inclós
Disponibilitat immediata
Editorial:
MARCOMBO S.A. BOIXAREU ED
Any d'edició:
2022
Matèria
Informàtica
ISBN:
978-84-267-3423-5
Pàgines:
340
Enquadernació:
RUSTEGA
28,50 €
IVA inclós
Disponibilitat immediata

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 distintos tipos de comunicación entre microservicios. Además, tras su lectura, conseguirá emplear una arquitectura limpia que le permitirá abstrae del almacén de datos utilizado, separar responsabilidades, crear un código reutilizable y mantenible, dotar a su sistema de un nivel de seguridad basado en token JWT, aprender los patrones más utilizados, así como conocer las bondades del desarrollo .NET, entre muchas otras posibilidades. Es el momento de dar rienda suelta a su creatividad y convertirse en el mejor arquitecto de software. Hágase con el libro, conozca los beneficios que aporta utilizar este tipo de arquitecturas y decida por sí mismo si debe o no aplicarlo. Ramón Serrano Valero: Ingeniero Informático con un máster en Ingeniería de Desarrollo para Dispositivos Móviles y otro en Ciencia de Datos. A lo largo de sus más de 14 años de experiencia en desarrollo .NET, diseñando diferentes arquitecturas software para las distintas necesidades de los clientes y asesorando a otras empresas en la definición de arquitecturas, ha aprendido que no todas las empresas requieren una misma arquitectura y que, en ocasiones, no realizar una sobre ingeniería simplifica la solución, al evitar que crezca su complejidad más de lo necesario.

Articles relacionats

  • WEB3
    TAPSCOTT, ALEX
    En las tres últimas décadas hemos pasado de la "web de solo lectura" a la "web de lectura escritura", que ha convertido a los usuarios de Internet en creadores de contenido y ofrece infinitas oportunidades para la colaboración. Si bien esta nueva web revolucionó los medios de comunicación, el comercio y otras industrias, la proliferación de ciberataques, ataques de datos y la r...
    Disponibilitat immediata

    29,95 €

  • PYTHON DESDE EL LABORATORIO. ESTRUCTURAS DE DATOS
    ARANA TORRES, SARA / CÓRDOVA NERI, TEODORO
    Dé un paso más allá en Python y domine las estructuras de datos En el dinámico mundo de la tecnología, las estructuras de datos son el pilar sobre el que las empresas construyen su capacidad para administrar información y forjar estrategias de crecimiento. Este libro le invita a sumergirse en el fascinante mundo de las estructuras de datos más utilizadas, como las listas y a...
    Disponibilitat immediata

    26,50 €

  • PETAR-HO A LES XARXES
    CLAVERA BUCH, CARLA
    UN LLIBRE AMÈ I DIVULGATIU PER TENIR NOCIONS BÀSIQUES SOBRE LES XARXES SOCIALS.   Vols PETAR-HO a les xarxes? Tens coses a dir, vols explicar-les i que el teu MISSATGE arribi? Què has de tenir en compte per crear aquesta comunitat? I el més important: quina és la XARXA més adient per a tu i per on comences? Aquest llibre és una EINA per començar el teu viatge a l'entorn digita...
    Disponibilitat immediata

    15,80 €

  • PYTHON DESDE EL LABORATORIO. REGISTROS, ARCHIVOS Y PROGRAMACIÓN DINÁMICA
    CÓRDOVA NERI, TEODORO / ARANA TORRES, SARA
    Profundice en el mundo Python y domine los registros, los archivos y la programación dinámica En el ámbito de la informática, trabajar con registros y archivos es básico para manejar un lenguaje de programación. Estas herramientas no solo simplifican procesos, sino que también potencian la eficiencia y la organización dentro de cualquier entorno empresarial. Este libro es u...
    Disponibilitat immediata

    19,50 €

  • PYTHON DESDE EL LABORATORIO. ESTRUCTURAS DE CONTROL
    ARANA TORRES, SARA / CÓRDOVA NERI, TEODORO
    Iníciese en el universo de Python y domine las estructuras de control Python es el lenguaje de programación que ha revolucionado el mundo tecnológico. Su simplicidad, gratuidad y versatilidad hacen de él una herramienta imprescindible en el campo de la informática, por lo que es utilizado por las principales compañías globales. Este libro le ofrece la oportunidad de introduci...
    Disponibilitat immediata

    23,80 €

  • DEEP LEARNING GENERATIVO. ENSEÑAR A LAS MÁQUINAS A PINTAR, ESCRIBIR, COMPONER Y
    FOSTER, DAVID
    La inteligencia artificial generativa es el tema de moda en tecnología. Esta guía práctica enseña a los ingenieros del machine learning y a los científicos de datos cómo utilizar TensorFlow y Keras para crear desde cero impresionantes modelos de deep learning generativo, como autocodificadores variacionales o VAE, redes generativas adversativas o GAN, Transformers, flujos de no...
    Disponibilitat immediata

    46,50 €