Du kan använda två listor för den här typen av distribuerade mönster istället. Jag föreslår detta främst på grund av PubSubs karaktär av "skjuta och glömma" utan att garantera leverans. Jag skulle anta att du inte vill det i ditt fall.
Här är det föreslagna flödet - först måste du ställa in två blockerande "lyssnare":
- Server1:
BRPOP completed
- Server2:
BRPOP requests
Sedan, när en användare loggar in:
- Server1:
LPUSH requests data
- Server2:avblockerar, bearbetar data,
LPUSH completed data
och gå tillbaka till blockering av pop - Server1:avblockerar, gör vad som helst, gå tillbaka till blockering av pop