Rate limiting
Apply fail-closed limits with trustworthy subjects and explicit Redis, Prisma, or Durable Object storage.
Distributed counters
Use Redis for distributed caches, rate-limit counters, and BullMQ-backed jobs while keeping application policy portable.
Visit Redis ↗Apply fail-closed limits with trustworthy subjects and explicit Redis, Prisma, or Durable Object storage.
Distributed counters
Use namespaced portable caches with typed serialization, tag invalidation, and explicit stampede-protection capabilities across Redis, Workers, and local runtimes.
Namespaced key-value caching · Stampede-protected remember · Tag invalidation
Compose authenticated realtime channels, resumable client state, WebRTC session control, and ICE or relay infrastructure without conflating events, signalling, and media.
Authenticated realtime channels
Redis adapters provide atomic cache leases and tag generations, atomic rate-limit counters, and the connection boundary used by BullMQ. Each adapter exposes its client while namespaces, limits, retry policy, and job behavior remain in the corresponding Playstack package.
Keep queue storage on a noeviction Redis instance rather than sharing it with an evictable application cache. Connection ownership, health checks, and shutdown remain application responsibilities.