Two-Sided Marketplace Platform
Marketplace Platformexpert complexity
Deterministic topology derived from YAML knowledge entities. Nodes represent workloads, datastores, patterns, and risk components. Edges show typed relationships with propagation direction.
19
Components
0
Connections
5
Failure Modes
2
Propagation Paths
Max exposure: high· 2 high-risk nodes in this topology
Topology Graph19 nodes · 0 edges
2 high-risk nodesClick a failure mode below to trace propagation
Workload
Datastore
Cache
Event stream
Pattern
Risk node
Risk path
Failure Propagation Trace
Topology Notes
- ·The API gateway is the single ingress point for all client traffic. It routes by domain (listings, search, checkout, notifications) and enforces per-domain rate limits. The gateway also handles authentication token validation before forwarding to downstream services.
- ·PostgreSQL serves as the transactional store for listings, orders, and user accounts. CQRS separates the write path (transactional commands) from the read path (listing display, order history queries). Read models are materialized in Redis or separate read-optimized tables.
- ·Kafka carries domain events between services: listing_created, listing_updated, order_placed, payment_completed, inventory_released. Each service publishes via the outbox pattern to ensure no event is lost on service failure. Topics are partitioned by entity ID (listing_id, order_id) for ordered event processing.
- ·RabbitMQ handles notification fanout. Each notification type (seller order alert, buyer tracking update, price drop alert) has its own exchange and queue. Dead-letter queues capture failed delivery attempts for manual review. Queue depth is a primary operational SLA metric.
- ·Redis caches hot listing display data (top 10k listings by view count), search result pages for common queries, and session tokens. Listing cache keys include a version token invalidated on update. Search result cache TTL is 60s: short enough to reflect price changes, long enough to absorb traffic spikes.