Redis Pub/Sub 中有確認(rèn)的概念嗎?例如,當(dāng)使用 RabbitMQ 時,我可以讓兩個工作人員在不同的機(jī)器上運行,當(dāng)我將消息發(fā)布到隊列時,只有一個工作人員會確認(rèn)/確認(rèn)并處理消息。但是我發(fā)現(xiàn)使用 Redis Pub/Sub,兩個工作人員都會處理消息。考慮這個簡單的例子,我在兩臺不同的機(jī)器/客戶端上運行了這個 go 例程:go func() { for { switch n := pubSubClient.Receive().(type) { case redis.Message: process(n.Data) case redis.Subscription: if n.Count == 0 { return } case error: log.Print(n) } }}()當(dāng)我發(fā)布消息時:conn.Do("PUBLISH", "tasks", "task A")兩個 go 例程都會接收它并運行 process 函數(shù)。有沒有辦法實現(xiàn)與 RabbitMQ 類似的行為?例如,第一個確認(rèn)消息的工作人員將是唯一一個接收并處理它的工作人員。
- 3 回答
- 0 關(guān)注
- 180 瀏覽
添加回答
舉報
0/150
提交
取消