第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Redis 發(fā)布/訂閱確認(rèn)/確認(rèn)

Redis 發(fā)布/訂閱確認(rèn)/確認(rèn)

Go
哈士奇WWW 2021-11-01 15:43:00
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 回答

?
隔江千里

TA貢獻(xiàn)1906條經(jīng)驗 獲得超10個贊

Redis PubSub 更像是一種廣播機(jī)制。

如果你想要隊列,你可以使用BLPOPRPUSH來獲得相同的交互。請記住,RabbitMQ 會執(zhí)行 Redis 中沒有的各種其他功能。但是,如果您正在尋找簡單的作業(yè)調(diào)度/請求處理風(fēng)格,這將工作得很好。


查看完整回答
反對 回復(fù) 2021-11-01
?
瀟湘沐

TA貢獻(xiàn)1816條經(jīng)驗 獲得超6個贊

不,Redis 的 PubSub 不保證交付,也不限制可能收到消息的訂閱者的數(shù)量。


查看完整回答
反對 回復(fù) 2021-11-01
  • 3 回答
  • 0 關(guān)注
  • 180 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號