service
Product Search Publisher

Product Search Publisher

Reads product changes from the product database (outbox) and reliably publishes product-created, product-updated and product-deleted events for the Search System to consume.

Service

Overview

The Product Search Publisher is the bridge between the Product Catalog System and the rest of the business. It uses the transactional outbox pattern: the Product APIProduct APIServicev1.0.0The public-facing API for the product catalog. Handles commands to create, update and delete products, serves product re...Subscribescreate-product, update-product +2APIsOpenAPIOwnerproduct-platformMapRepoView docs records every product change in the Product DatabaseProduct DatabaseContainerv1.0.0PostgreSQL database that is the system of record for all product data.MapView docs, and this service reliably reads those changes and publishes them as Product CreatedProduct CreatedEventv1.0.0Published when a new product has been added to the catalog. Ownerproduct-platformSchemaMapView docs, Product UpdatedProduct UpdatedEventv1.0.0Published when an existing product's data has changed. Ownerproduct-platformSchemaMapView docs and Product DeletedProduct DeletedEventv1.0.0Published when a product has been removed from the catalog. Ownerproduct-platformSchemaMapView docs events.

This guarantees that product changes are never lost and are delivered to the Search SystemSearch SystemSystemv1.0.0Internal system that keeps product data searchable. Consumes product change events from the Product Catalog System, main...Ownersearch-platformMapView docs in order.

Sends 3 messages

Product change events published for downstream systems

Responsibilities

AreaDescription
Outbox pollingReads unpublished product changes from the Product DatabaseProduct DatabaseContainerv1.0.0PostgreSQL database that is the system of record for all product data.MapView docs.
Reliable publishingPublishes Product CreatedProduct CreatedEventv1.0.0Published when a new product has been added to the catalog. Ownerproduct-platformSchemaMapView docs, Product UpdatedProduct UpdatedEventv1.0.0Published when an existing product's data has changed. Ownerproduct-platformSchemaMapView docs and Product DeletedProduct DeletedEventv1.0.0Published when a product has been removed from the catalog. Ownerproduct-platformSchemaMapView docs with at-least-once delivery.
OrderingPreserves per-product ordering of change events.

Architecture diagram

Messages for this service

Sends messages (3)

Quickly find the message you need by searching for the name, type, or summary.
NameVersionTypeSummary
Product Created
v1.0.0eventPublished when a new product has been added to the catalog.
Product Updated
v1.0.0eventPublished when an existing product's data has changed.
Product Deleted
v1.0.0eventPublished when a product has been removed from the catalog.

Receives messages (0)

Quickly find the message you need by searching for the name, type, or summary.
NameVersionTypeSummary
No messages found
Event-driven architecture documentation: Acme Inc