Skip to content

Redis turns a set of servers that share one database into a single live auction house. Before you switch it on, two things need to be true. Every server points at the same shared MySQL or PostgreSQL Database, and a Redis 6 or newer server is running somewhere all of them can reach. Redis on its own, without a shared database, has nothing to keep in step.

The settings

The redis block in config.yml has three keys. The whole block is read once at startup, so a change here needs a full server restart, not /ahadmin reload.

KeyDefaultWhat it does
enabledfalseTurn cross-server sync on. Set it to true on every server in the network.
uriredis://localhost:6379The Redis connection URI. Use the form redis://host:port, or redis://:password@host:port if your Redis needs a password.
channelproton:updatesThe pub/sub channel the servers talk on. Every server must use the same name.

Turning it on

  1. Set up the shared database first

    Redis only signals changes, it does not store them. Point every server at one shared MySQL or PostgreSQL database before you touch Redis. See Database and the network walkthrough in How To Setup.

  2. Point every server at the same Redis

    Give each server the same uri and the same channel. If Redis needs a password, put it in the uri.

  3. Enable it

    Set redis.enabled to true in each server's config.yml.

  4. Restart

    Restart every server so the new redis block is read. A reload will not pick it up.

  5. Check it

    List an item on one server and open /ah on another. The listing should appear without a manual refresh. If it does not, see Troubleshooting.