The Redis client library allows for an optional read timeout, which we [take as a parameter in cluster](https://github.com/peterbourgon/crdt/blob/master/cluster/cluster.go#L21) and [set in the e.g. crdtsvc here](https://github.com/peterbourgon/crdt/blob/master/crdtsvc/main.go#L36). That provides an upper bound for all Redis operations, so the longest we'll _linger_ is presently 3 seconds.

Can you expand a bit on how you'd propose to do more aggressive timeouts? We can say we'll return e.g. 503 if we don't get the first response in e.g. 1000ms, but I'm not sure what that buys us...