Plainwire Self-Hosting2.0

Storage responsibility matrix

Data PostgreSQL Redis Scylla Upload storage
Accounts authority optional cache/gates no no
Sessions authority temporary acceleration no no
Servers/channels authority optional cache no no
Roles/permissions authority optional cache only no no
Presence durable identity only active realtime state no no
Rate limits durable account state distributed ephemeral gate no no
Messages in postgres mode authority hot cache disabled/non-authority attachments only
Messages in dual mode read/write authority hot cache mirrored target attachments only
Messages in scylla mode relational recovery mirror hot cache timeline authority attachments only
Message lifecycle events supporting metadata no high-volume history no
Audit/delivery history transactional support no high-volume history no
Attachment bytes metadata/access rules no message references authority for bytes
Webhook config authority no no no

Rule: caches may accelerate authority, but they must not silently replace it.

Plainwire Self-Hosting Handbook · verified against Plainwire 2.0.0 · 2026-09-17