What is Redis

Redis is often referred to as a data structures server. What this means is that Redis provides access to mutable data structures via a set of commands, which are sent using a server-client model with TCP sockets and a simple protocol. So different processes can query and modify the same data structures in a shared way.

Github repository

https://github.com/redis/rueidis

Use Redis

With Caddy

You have to build your caddy instance including Souin and Redis using xcaddy (refer to the build caddy section).

  xcaddy build --with github.com/darkweak/souin/plugins/caddy --with github.com/darkweak/storages/redis/caddy
  

You will be able to use redis in your Caddyfile or JSON configuration file.

  {
    cache {
        ttl 1h
        redis
    }
}

route {
    cache
    respond "Hello HTTP cache"
}
  

Configuration

You can find the configuration for Redis here or check the values table below.

Values

Key nametyperequired
InitAddress[]string✅
Usernamestring❌
Passwordstring❌
ClientNamestring❌
ClientSetInfo[]string❌
ClientTrackingOptions[]string❌
SelectDBint❌
CacheSizeEachConnint❌
RingScaleEachConnint❌
ReadBufferEachConnint❌
WriteBufferEachConnint❌
BlockingPoolSizeint❌
PipelineMultiplexint❌
ConnWriteTimeouttime.Duration❌
MaxFlushDelaytime.Duration❌
ShuffleInitbool❌
ClientNoTouchbool❌
DisableRetrybool❌
DisableCachebool❌
AlwaysPipeliningbool❌
AlwaysRESP2bool❌
ForceSingleClientbool❌
ReplicaOnlybool❌
ClientNoEvictbool❌