System Architecture¶
SteamDeals separates public reads from ingestion and user workflows. The API Gateway terminates client traffic and enforces policy; services communicate over mTLS gRPC and publish domain events to the message bus.
flowchart TB
Client[REST clients / SDKs] --> Gateway[API Gateway]
Client --> RT[Realtime Gateway]
Gateway --> Identity[Identity Service]
Gateway --> Catalog[Catalog Service]
Gateway --> Pricing[Pricing Service]
Gateway --> Wishlist[Wishlist Service]
Gateway --> Export[Export Service]
Connectors[Store connectors] --> Integration[Integration Service]
Integration --> Bus[(Event bus)]
Bus --> Catalog
Bus --> Pricing
Pricing --> Deals[Deals Engine]
Deals --> Bus
Bus --> Notify[Notification Service]
Bus --> RT
Bus --> Analytics[Analytics Service]
The gateway reads from service APIs only. It never queries a connector directly. This boundary protects client latency from upstream store instability and permits replayable ingestion.
Read services and dependencies and the data flow for operational detail.