Redis
Redis (Remote Dictionary Server) is an in-memory data-structure store used as a database, cache, and message broker. It supports a range of data structures (strings, hashes, lists, sets, sorted sets, bitmaps, hyperloglogs, geospatial indexes, streams), replication, Lua scripting, LRU eviction, transactions, and several levels of on-disk persistence. Valkey, the open-source Redis-compatible fork, is also supported through the same variant.
Redis is supported only as an in-memory store. It cannot be used as the primary data store or as a blob store.
Standalone configuration
The standalone Redis backend is selected by choosing the Redis variant on the InMemoryStore object (found in the WebUI under Settings › Storage › In-Memory Store). The variant exposes the following fields:
url: connection URL for the Redis server. Default:"redis://127.0.0.1". The URL may embed a username, password, port, and database index:redis[s]://[<username>][:<password>@]<hostname>[:port][/<db>]#insecure. The#insecurefragment disables TLS verification when using theredissscheme, which is useful with self-signed certificates.timeout: maximum time to wait for a response from the Redis server. Default:"10s".poolMaxConnections: maximum number of pooled connections. Default:10.poolTimeoutCreate,poolTimeoutWait,poolTimeoutRecycle: connection-pool lifecycle timeouts. Default:"30s"each.
Cluster configuration
The Redis Cluster backend is selected by choosing the RedisCluster variant on the InMemoryStore object. The variant exposes the following fields:
urls: list of connection URLs for the cluster nodes.authUsername: username used to authenticate. Default:"stalwart".authSecret: password or other secret reference used to authenticate (required).timeout: maximum time to wait for a response from the Redis server. Default:"10s".maxRetries,minRetryWait,maxRetryWait: command retry policy controlling the total number of retries and the backoff between attempts.readFromReplicas: whentrue, allows reads to be served by replica nodes; whenfalse, reads are restricted to the primary. Default:true.protocolVersion: Redis protocol version. Supported values areresp2andresp3. Default:resp2.- The pool lifecycle fields (
poolMaxConnections,poolTimeoutCreate,poolTimeoutWait,poolTimeoutRecycle) mirror those of the standalone variant.
To distribute load across several independent Redis deployments, combine multiple Redis or Redis Cluster backends through the Sharded in-memory store.