Webforx

Platform Environments

Platform Engineering — Infrastructure

Stage
promote
Sandbox
promote
Production
S
Development & Integration
Stage

The first deployment target for new code. Used by developers for integration testing, feature validation, and early bug detection. Receives every merged PR automatically.

Purpose: Integration testing, feature validation, API contract verification
Deploy trigger: Automatic on merge to develop branch
Data: Synthetic/seeded test data, reset periodically
Stability: Lowest -- frequent deploys, may break
Access: Development team, QA engineers
Services: All 12 microservices + Kong gateway + Redis + RabbitMQ + PostgreSQL
B
Pre-Production & QA
Sandbox

Mirror of production used for final QA, UAT, performance testing, and stakeholder demos. Promoted code from Stage lands here for thorough validation before going live.

Purpose: UAT, performance testing, stakeholder demos, release candidate validation
Deploy trigger: Manual promotion from Stage after QA sign-off
Data: Production-like dataset, anonymized where needed
Stability: Medium -- should mirror prod behavior closely
Access: QA team, product owners, selected stakeholders
Infra: Production-equivalent sizing, same Kubernetes cluster config
P
Live & Customer-Facing
Production

The live environment serving real users and customers. Only thoroughly tested and approved releases from Sandbox are promoted here. Zero-downtime deployments enforced.

Purpose: Live customer traffic, real transactions, production workloads
Deploy trigger: Manual promotion from Sandbox with release approval
Data: Real customer data, encrypted at rest, backups on schedule
Stability: Highest -- zero-downtime deploys, rollback ready
Access: Platform engineering (deploy), on-call team (ops), limited SSH
Infra: HA Kubernetes, multi-AZ, auto-scaling, Vault secrets, monitoring + alerting

Infrastructure Comparison

Component Stage Sandbox Production
Kubernetes Nodes2 nodes (t3.medium)3 nodes (t3.large)3+ nodes (t3.xlarge), auto-scale
PostgreSQLSingle instance (db.t3.micro)Single instance (db.t3.small)Multi-AZ RDS (db.t3.medium+)
RedisSingle nodeSingle node with replicaRedis Sentinel (master + 2 replicas + 3 sentinels)
RabbitMQSingle nodeSingle nodeClustered (3 nodes), mirrored queues
S3 / MinIOMinIO (local)AWS S3AWS S3 (versioned, lifecycle rules)
Kong GatewaySingle instanceSingle instance2+ replicas, health checks
MonitoringBasic logsPrometheus + GrafanaPrometheus + Grafana + PagerDuty alerting
SecretsEnv files / .envVault (dev policy)Vault (production policy, audit logging)
BackupsNoneDaily snapshotsContinuous + point-in-time recovery
CORS Originslocalhost:3000, localhost:3010stage.*, sandbox.* domainsProduction domains only
TLSSelf-signed / noneLet's EncryptACM managed certificates
Deploy FrequencyMultiple per dayWeekly / on-demandBi-weekly / release cycle