我爲RPC工作負載配置了一個名爲「ex_foo
」的rabbitmq扇出交換。當客戶端連接到服務器時,他們創建自己的非持久RPC接收隊列並使用BasicConsumer連接到它。這些應用程序偵聽消息/命令並響應請求中reply_to
部分中定義的隊列。等待fanfan交換所有rabbitmq響應?
一個簡單的消息/命令我發送出扇出交換(並且因此,連接到它的每個應用程序/客戶端)是一種類型的Ping請求消息的,我的問題是,我不的不知道我會得到多少ping響應(或者應該期望),因爲我不知道有多少客戶端在任何時候都連接到扇出交換機。所有連接到扇出交換機的客戶端都應答覆。
如果在扇出交換中傳遞給10個隊列(即:10個客戶端已連接),我如何知道預期會有多少響應?爲了知道這一點,我需要知道它交付了多少次?有沒有更復雜的睡眠計時器?簡單地說,我的管理工具不能無限期地等待,並且必須在收回所有ping(或超時已過)後退出。
你可以把那些沒有響應的那些視爲「失望」嗎? –
當然,如果一個節點沒有響應它關閉。但是一個ping請求會產生很多ping回覆,如果我只睡10秒,看看有多少響應,看起來很糟糕,例如,如果每個節點在1秒內響應。 – xconspirisist
我並不覺得這很糟糕;你等待一段時間,如果在那段時間內沒有迴應,它就會降低< - 對我來說聽起來很明智.. –