[HZ bands] inventory test
By @IvanTheGeek
Tiers as horizontal bands (4 tier rows, containers laid out left-to-right within each):
flowchart TB
subgraph frontG["Front tier"]
direction LR
web["`**web**
OpenResty (nginx + Lua)
_reverse proxy · rate/conn + bandwidth limits_
_serves /-/u/* uploads · publishes :80 :443_`"]
cache["`**cache**
Redis 8.6.1 :6379
_presence · watchbar · login secrets_
_link-preview cache · auto-SSL storage_`"]
end
subgraph appG["App / data tier"]
direction LR
app["`**app**
JVM Java 11 · Play (Scala)
_talkyard-server :9000_
_React SSR in-JVM (Nashorn)_`"]
rdb["`**rdb**
PostgreSQL 18.3 :5432
_all forum data_`"]
search["`**search**
Elasticsearch 9.3.1 :9200
_full-text index_`"]
end
subgraph egrG["Egress"]
direction LR
egressp["`**egressp**
Smokescreen :4750
_SSRF-filtering egress proxy · read-only_`"]
end
subgraph idleG["Idle / on-demand"]
direction LR
rendr["`**rendr**
debian-slim
_placeholder — no traffic today_`"]
backup["`**backup**
pg_dumpall + gpg
_profile-only · on-demand_`"]
end
classDef front fill:#dcfce7,stroke:#16a34a,color:#14532d
classDef appt fill:#e0e7ff,stroke:#6366f1,color:#312e81
classDef egr fill:#fee2e2,stroke:#dc2626,color:#7f1d1d
classDef idle fill:#f3f4f6,stroke:#9ca3af,color:#4b5563,stroke-dasharray:5 5
class web,cache front
class app,rdb,search appt
class egressp egr
class rendr,backup idle
End.