javascript
java监控队列_java-Spring Rabbit监听输出队列或接收
我正在開發具有Rabbitmq支持的應用程序.因此,我有一個消費者和一個生產者.我需要在兩種方法之間做出決定,如何在兩者之間建立通信.
第一種方式
public void send(){
//send to consumer and forget
rabbitTemplate.convertAndSend("","routing-key",my object);
//waiting for output queue and messages from consumer
while(true){
//receive something.
if(corellationID==what we need){
//do what we need
break;
}
}
}
第二種方式
public void send(){
//send to consumer and wait for result
Object o=rabbitTemplate.convertSendAndReceive("","routing-key",my object);
}
哪種方法在高負載下會更快速,更穩定地工作?也許還有另一種更有效的方法可以做到這一點.謝謝
解決方法:
與第一種方法一樣,第二種方法必須實現第二種方法已經完成的工作:
>創建相關ID
>維護地圖
>從答復隊列出隊消息
>將回復消息與生產者相關聯
> …
最有效的方法是沒有等待回復的線程.因此以異步方式工作:發送消息的線程可能不是接收答復的線程. Have a look at the documentation
標簽:rabbitmq,spring,java
來源: https://codeday.me/bug/20191120/2044004.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的java监控队列_java-Spring Rabbit监听输出队列或接收的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: docker安装mysql指定_Dock
- 下一篇: Java建造圆判断是否在园内_java