Fluidez Brillante: Cómo Configurar PostgreSQL

Guía para configurar PostgreSQL con Fluent Brighter: outbox, inbox y gateway de mensajería, suscripciones y publicaciones para microservicios fiables e idempotentes.

7 sept 2025 • 4 min de lectura • Equipo Q2BSTUDIO

Inteligencia-Artificial-

En artículos anteriores sobre integración con RabbitMQ mostré cómo trabajar con Fluent Brighter; en esta ocasión te explico paso a paso cómo configurar PostgreSQL para habilitar outbox, inbox y gateway de mensajes con Fluent Brighter, manteniendo una configuración clara, segura y preparada para producción.

Requisitos esenciales: .NET 8 o netstandard2.0 y los paquetes NuGet de Fluent Brighter para PostgreSQL y el Service Activator para tareas en segundo plano. Con esto podrás publicar y consumir mensajes de forma fiable, desacoplar microservicios y garantizar entregas idempotentes.

Fundamentos de Brighter. Las solicitudes se modelan como comandos y eventos que implementan IRequest. Un comando se dirige a un único consumidor, por ejemplo ProcessOrderCommand, mientras que un evento notifica a varios suscriptores, por ejemplo OrderPlacedEvent. Opcionalmente puedes usar un mapeador de mensajes para traducir entre el mensaje de Brighter y tu objeto de dominio, aunque la serialización JSON es el comportamiento por defecto. Finalmente, un manejador procesa la solicitud y ejecuta la lógica de negocio, por ejemplo un OrderPlacedHandler que registra y aplica la operación correspondiente.

Registro inicial en el contenedor de DI. Agrega AddFluentBrighter en tu arranque y define allí los componentes de mensajería. Esto permite una construcción declarativa y coherente, además de simplificar pruebas y despliegues.

Suscripciones. En la sección de Subscriptions usa AddPostgresSubscription para declarar qué colas o tópicos quieres escuchar. Si empleas RabbitMQ como broker, combina AddRabbitMqChannelFactory con una instancia de RelationalDatabaseConfiguration para que Brighter gestione los canales de entrada y el almacenamiento de estado con PostgreSQL. Puedes declarar varias suscripciones y asignar colas como greeting.queue o farewell.queue, ajustando además el tipo de bomba de mensajes, por ejemplo Reactor, cuando necesites alto rendimiento.

Publicaciones. En Producers añade AddPostgresPublication para definir cómo y dónde se publican tus eventos. Establece la conexión con RelationalDatabaseConfiguration y registra una o más publicaciones, cada una con su cola o tópico objetivo, como greeting.event.topic. Esto te permitirá escribir primero en el outbox y después publicar de forma segura hacia el broker, evitando pérdidas en caso de fallos temporales.

Outbox con PostgreSQL. Activa UsePostgresOutbox para persistir de forma transaccional los mensajes salientes junto con tus cambios de dominio. Habilita además UseDbTransactionOutboxArchive para archivar y UseOutboxSweeper para barrer y reenviar mensajes pendientes. Con este patrón garantizas consistencia entre tu base de datos operacional y la mensajería, incluso en escenarios con fallos de red o reinicios inesperados.

Inbox con PostgreSQL. Si necesitas idempotencia al consumir, utiliza UsePostgresInbox desde la sección de Subscriptions. Esto registra los mensajes entrantes y te permite evitar reprocesamientos, algo clave cuando habilitas reintentos o cuando el broker entrega más de una vez.

Configuración unificada. Para simplificar, UsingPostgres centraliza la conexión y los nombres de tablas de outbox e inbox. Define SetConnection con el connection string de PostgreSQL y luego activa UseInbox y UseOutbox. Completa con UsePublications para tus eventos, por ejemplo agregar publicaciones para GreetingEvent y FarewellEvent, y UseSubscriptions para las colas correspondientes, asignando Reactor si buscas baja latencia. Esta aproximación reduce duplicidad, facilita el mantenimiento y sigue siendo flexible para escenarios avanzados.

Buenas prácticas. Mantén los mapeadores pequeños y orientados a la transformación mínima necesaria. Define claves idempotentes en el inbox para procesamientos seguros. Monitoriza el barrido del outbox y su archivo, y ajusta las políticas de reintento. Emplea métricas y trazas para entender el flujo extremo a extremo, especialmente en arquitecturas de microservicios.

En Q2BSTUDIO impulsamos soluciones de software a medida y aplicaciones a medida que integran patrones de mensajería confiables como outbox e inbox sobre PostgreSQL, con despliegues robustos en servicios cloud aws y azure. Si necesitas un equipo para construir plataformas resilientes y escalables, descubre cómo abordamos proyectos end to end en desarrollo de software y aplicaciones a medida y cómo aseguramos disponibilidad, rendimiento y observabilidad con nuestra práctica cloud en servicios cloud aws y azure.

Nuestro portafolio abarca inteligencia artificial e ia para empresas, agentes IA, ciberseguridad y pentesting, servicios inteligencia de negocio y power bi, además de automatización de procesos. Integramos modelos de inteligencia artificial con pipelines de datos y analítica, y reforzamos la protección extremo a extremo con ciberseguridad. Unificamos datos para cuadros de mando con power bi y habilitamos decisiones informadas en tiempo real.

Conclusión. Con Fluent Brighter y PostgreSQL puedes implementar outbox e inbox para garantizar confiabilidad e idempotencia, además de un gateway de mensajería coherente. La configuración unificada con UsingPostgres hace el setup más directo sin perder flexibilidad. Si quieres ver un ejemplo completo en funcionamiento, revisa esta referencia en GitHub: implementación de muestra con PostgreSQL.

¿UNA PAUSA?

Juega un momento antes de irte

NUESTROS SERVICIOS

Cómo podemos ayudarte

Inteligencia artificial

Agentes de IA, chatbots y asistentes inteligentes que automatizan tareas y atienden a tus clientes 24/7 para mejorar la eficiencia de tu negocio.

Más info

Desarrollo de software

Aplicaciones web, móviles y de escritorio, intranets, e-commerce, SaaS y plataformas de gestión diseñadas para las necesidades concretas de tu empresa.

Más info

Servicios cloud

Migración, infraestructura, hosting gestionado, alta disponibilidad y seguridad en Microsoft Azure y Amazon Web Services para que tu negocio escale sin límites.

Más info

Ciberseguridad y pentesting

Auditorías de seguridad, test de intrusión (pentesting) y protección de aplicaciones, datos e infraestructura on-premise y cloud, con hacking ético y cumplimiento normativo.

Más info

Business Intelligence

Cuadros de mando y análisis de datos con Power BI: integramos tus fuentes, diseñamos dashboards y KPIs y convertimos tus datos en decisiones.

Más info

Automatización de procesos

Automatizamos tareas repetitivas y conectamos tus aplicaciones con n8n, Power Automate, Make y RPA, eliminando trabajo manual y aumentando la productividad.

Más info

Formación para empresas

Formamos a tus equipos en tecnología con criterio: desarrollo web, bases de datos, Git, buenas prácticas y seguridad, automatización con n8n, inteligencia artificial para empresas y creación de soluciones de IA con Azure AI Foundry.

Más info

Auditoría de código

Auditamos el código que creas tú, tu equipo o una IA: te decimos qué está bien y qué mejorar, lo securizamos y lo dejamos listo para producción, web o app.

Más info

Generación de imágenes con IA

Creamos por ti las imágenes que necesita tu negocio con inteligencia artificial: producto, redes, publicidad, ilustración y avatares. Tú nos dices qué quieres y te lo entregamos listo para usar.

Más info

Generación de vídeos con IA

Creamos por ti vídeos con inteligencia artificial: promocionales, para redes, presentadores virtuales, doblaje y animaciones. Nos cuentas la idea y te lo entregamos montado y listo para publicar.

Más info

Avatares conversacionales con IA

Creamos avatares conversacionales con IA —humanos digitales con cara y voz— que atienden a tus clientes y equipos con el conocimiento de tu empresa, en tu web, monitores interactivos, WhatsApp o Teams.

Más info

Marketing Online e IA

Google Ads, Meta Ads, LinkedIn Ads y posicionamiento en motores de IA (GEO/AEO): captamos clientes y hacemos que tu marca aparezca donde te buscan, también en ChatGPT, Gemini y Perplexity.

Más info

¿Tienes un proyecto en mente?

Cuéntanos tu visión y la convertimos en una solución de software. Sea cual sea el alcance, hacemos realidad tu idea.

Live Chat