Recurso-libro

Software Architecture Patterns for Serverless Systems - Second Edition

Portada de Software Architecture Patterns for Serverless Systems - Second Edition
Autores
John Gilbert
Editorial
Packt Publishing
Año
2024
ISBN
9781803235448
Resumido por
Augusto Romero Arango

A partir de la lectura de Building Multi-Tenant SaaS Architectures, el autor propone que el modelo serverless es apropiado para este tipo de arquitecturas.

Cuando construimos Bitákora, lo hicimos creando microservicios alojados en contenedores y orquestados en un Docker-swarm. Nuestra experiencia en Serverless se limitaba a crear una función para realizar la evaluación de un documento o una foto y determinar si era una incapacidad y obtener los datos para crear automáticamente un registro.

Tomar la decisión de crear una arquitectura Serverless sin experiencia previa nos exige estudiar y aprender de este tipo de arquitecturas. Nos apoyaremos en este libro para entender los patrones de diseño y las bondades y limitaciones de los Funtions as a Service (FaaS) para hacer los experimentos de desarrollo en el Control Plane y posiblemente para los nuevos productos montados en el Application Plane.

Capítulos

1. Architecting for Innovation

Introduce los principios de diseño para sistemas serverless, resaltando la importancia del event-driven design y la agilidad para innovar sin fricción operacional.

PDF
2. Defining Boundaries and Letting Go

Explica cómo identificar y definir los límites correctos entre microservicios usando Domain-Driven Design, aplicando el principio de responsabilidad única a nivel arquitectónico.

PDF
3. Taming the Presentation Tier

Aborda el diseño de micro frontends y cómo estructurar la capa de presentación en sistemas distribuidos para mantener la independencia entre equipos de desarrollo.

PDF
4. Trusting Facts and Eventual Consistency

Examina el modelo de consistencia eventual en sistemas distribuidos, el uso de eventos como hechos inmutables y cómo diseñar servicios que toleren la asincronía.

PDF
5. Turning the Cloud into the Database

Propone aprovechar los servicios cloud nativos (DynamoDB, S3, etc.) como capa de persistencia, eliminando la necesidad de gestionar bases de datos relacionales tradicionales.

PDF
6. A Best Friend for the Frontend

Cada actividad de usuario recibe su propio servicio BFF autónomo con almacén de datos dedicado y una API trilateral de comandos, consultas, listener y trigger. Internamente, cada función se estructura con una nano arquitectura hexagonal que separa lógica de negocio, connectors y handlers. Según el patrón de acceso, aplicamos variantes especializadas —CRUD, lista de valores, tareas, búsqueda, acciones, dashboards, reportes y archivo— alineadas con las fases del ciclo de vida de los datos.

PDF