How It Works
Cross-server sync keeps one thing straight: every server showing the exact same auction house, updated the moment anything changes.
The shared database does the storing
All the listings live in one database that every server connects to. When a player lists, buys, or cancels on any server, that change is written once, to the one place they all share. There is no copying data between servers, because there is only ever one copy.
Redis does the telling
A database alone would leave each server unaware that another had just changed something. That is where Redis comes in. The moment a listing appears, sells, or ends, the server it happened on sends a tiny signal over Redis, and every other server refreshes just that listing from the shared database. A message never carries the auction itself, only a nudge to go and look.
The result
A player lists a diamond sword on one server, and within a heartbeat it is on the grid for everyone, everywhere, at the right price. Buy it on another server and it vanishes for all of them at once. No refreshing, no waiting, no double sales.