Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Products MS Overview

products-ms es la fuente de verdad del catálogo. Todo lo que el sistema necesita saber sobre un producto "vendible" nace aquí: identidad, nombre, precio y disponibilidad.

Rol dentro del sistema

Este servicio parece simple, pero cumple una función estructural muy importante: evita que otros contextos adivinen o dupliquen información del catálogo.

En la práctica:

  • el gateway lo usa para exponer operaciones de catálogo;
  • order-ms confía en este servicio para validar qué productos siguen siendo válidos al momento de comprar;
  • el resto del sistema puede asumir que precio y disponibilidad se consultan aquí.

Por qué es un buen punto de entrada al repo

De todos los servicios, este suele ser el más fácil de leer porque combina pocos conceptos y casi nada de orquestación:

  • un dominio acotado;
  • persistencia directa;
  • contratos de mensajería claros;
  • una regla simple de disponibilidad.

Eso lo vuelve ideal para entender el patrón base antes de pasar a órdenes o pagos.

Qué protege este microservicio

Más que "guardar productos", este servicio protege decisiones del catálogo:

  • qué atributos forman parte del producto;
  • cuándo un producto sigue visible o comprable;
  • qué datos pueden reutilizar otros dominios;
  • cómo se valida una lista de productos antes de continuar un flujo.

Su decisión más visible hoy es que la eliminación es lógica. El sistema prefiere desactivar productos antes que borrarlos físicamente, lo que mantiene coherencia para consultas y flujos aguas abajo.

Mapa rápido del código

  • src/products/products.controller.ts: frontera de mensajes del catálogo.
  • src/products/products.service.ts: reglas de lectura, actualización y validación.
  • prisma/schema.prisma: definición del modelo persistido.

Qué cambios suelen pertenecer aquí

Este es el servicio correcto cuando quieres:

  • cambiar qué significa que un producto esté disponible;
  • extender el modelo del catálogo;
  • ajustar cómo se valida una orden contra productos existentes;
  • introducir nuevas reglas de consulta o visibilidad del catálogo.

Si el cambio está más relacionado con checkout, pago o estado de compra, probablemente ya salimos del dominio de este microservicio.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages