Production checklist

Redis / Valkey production checklist: 5 checks before launch

5 checks for running Redis / Valkey in production: 1 must-do, 3 should-dos and 1 good-to-have. Each one says why it matters, how to verify it and where the docs are.

Updated . Every check links the vendor’s own docs.

Check my repo

Must do (1)

  • Require authentication (ACL users) and keep it off the public internet

    Redis trusts every client that can connect; exposed instances get wiped or used to run code.

    Verify from the command line

    From outside your private network the connection should fail. From inside, an unauthenticated PING should be refused with NOAUTH.

    redis-cli -h <host> -p 6379 ping

    Read more on redis.io

Should do (3)

  • Use TLS between the app and Redis

    Session tokens and cached data otherwise travel in plain text.

    Check the config

    Your app’s Redis URL should start with rediss:// (two s’s), and redis-cli should connect with --tls.

    redis-cli --tls -h <host> -p <port> --user <user> --askpass ping

    Read more on redis.io

  • Set maxmemory and an eviction policy that fits your use

    Without it Redis grows until the host runs out of memory; use allkeys-lru for caches, noeviction for queues.

    Verify from the command line

    maxmemory should be non-zero and the policy should fit the data: allkeys-lru for a cache, noeviction for queues. Managed services set these in their console.

    redis-cli CONFIG GET maxmemory
    redis-cli CONFIG GET maxmemory-policy

    Read more on redis.io

  • Block dangerous commands for the app user with ACLs

    A compromised app user that can run FLUSHALL, CONFIG or DEBUG can wipe or reconfigure the server.

    Verify from the command line

    The app user’s rules should exclude dangerous commands (for example +@all -@dangerous) and the default user should be off or password-protected.

    redis-cli ACL GETUSER <app-user>
    # example rule:
    # ACL SETUSER <app-user> on ><password> ~* &* +@all -@dangerous

    Read more on redis.io

Good to have (1)

  • Choose persistence on purpose: AOF or RDB for data you keep, none for a pure cache

    The defaults may not match what you store; queues and sessions need to survive a restart, a cache doesn’t.

    Verify from the command line

    appendonly and save should match what you store: AOF (yes) or RDB snapshots for data you keep, both off for a pure cache.

    redis-cli CONFIG GET appendonly
    redis-cli CONFIG GET save

    Read more on redis.io

Get the checklist for your whole stack

Design your stack or map your repo in StackPrism, and the Improve panel lists the checks for every technology on it and keeps track of what you’ve done. Building with an AI app builder? Start with the vibe coding checklist.