flowchart TB
cust(["Customer"])
subgraph boundary["Order Management"]
direction TB
web["Web Application<br/><i>Next.js</i>"]
api["Order API<br/><i>Java / Spring Boot</i>"]
worker["Fulfilment Worker<br/><i>Java / Spring Boot</i>"]
db[("Order Store<br/><i>PostgreSQL</i>")]
queue[["Order Events<br/><i>Kafka</i>"]]
cache[("Session Cache<br/><i>Redis</i>")]
end
pay["Payment Gateway"]
cust -->|"HTTPS"| web
web -->|"JSON over HTTPS"| api
api -->|"reads and writes"| db
api -->|"reads and writes"| cache
api -->|"publishes"| queue
queue -->|"consumes"| worker
worker -->|"reads and writes"| db
worker -->|"HTTPS"| pay
Container Diagram
One level inside the system boundary — the separately deployable and runnable pieces, each named with the technology it is built on.