Puoi invece usare due Liste per questo tipo di pattern distribuito. Sto suggerendo questo principalmente a causa della natura di PubSub di "scatta e dimentica" senza garantire la consegna. Presumo che nel tuo caso non lo desideri.
Ecco il flusso suggerito:prima devi impostare due "ascoltatori" di blocco:
- Server1:
BRPOP completed
- Server2:
BRPOP requests
Quindi, quando un utente effettua l'accesso:
- Server1:
LPUSH requests data
- Server2:sblocca, elabora dati,
LPUSH completed data
e torna al blocco pop - Server1:sblocca, fa qualunque cosa, torna a bloccare il pop