This image shows a multi-tier topology consisting of a load balancer, a containerized application tier, and an autonomous database. All the resources in the topology are in a single availability domain and VCN in an Oracle Cloud Infrastructure region.

The load balancer is attached to a public subnet. An internet gateway allows traffic between the load balancer and users outside the cloud.

The application tier is in a private subnet. The application is composed of the following containerized microservices. The programming platform or language used to develop each microservice is indicated in parentheses.
  • Ingress (Nginx)
  • Router (Traefik)
  • Media (Node.js)
  • REST API (Node.js)
  • Storefront (HTML 5)
  • Tracking (Go)
  • Session DB (Redis)
  • Users (TypeScript)
  • Orders (Java)
  • Messaging (NATS)
  • Payments (Go)
  • Fulfillment (Micronaut)
  • Carts (Helidon)
  • Catalog (Go)

The autonomous database is in a private subnet.

A NAT gateway enables access from the private subnet of the application tier to the public internet.

A service gateway enables connectivity from the application tier to Oracle Cloud Infrastructure Object Storage.