RannitMQ的進行多執行緒併發處理消費訊息的設定

2021-09-19 06:42:09 字數 715 閱讀 6111

在rabbitconfig配置
//消費者併發數量

public static final int default_concurrent = 10;

@bean("customcontaine***ctory")

public ******rabbitlistenercontaine***ctory containe***ctory(******rabbitlistenercontaine***ctoryconfigurer configurer, connectionfactory connectionfactory)

消費訊息的時候配置

@rabbitlistener(queues="$",containe***ctory = "customcontaine***ctory")

public void receivemediaprocesstask(string msg){

//1、解析訊息內容,得到mediaid

map map = json.parseobject(msg, map.class);

string mediaid = (string) map.get("mediaid");

//2、拿mediaid從資料庫查詢檔案資訊

optionaloptional = mediafilerepository.findbyid(mediaid);

這樣就可以達到同時處理監聽到的程式業務的併發執行

對多執行緒進行測試

在junit下,很難對多執行緒的 進行測試,因此需要借助其他的方式,比如executor service框架.最近要對乙個監控類的輸出情況寫乙個測試,簡單的跑一下輸出格式是否跟預期一致.我這裡借助了threadpoolexecutor completionservice.即在結束前,需要從執行緒池中...

IntelliJ IDEA 進行多執行緒除錯

idea的斷點有不同的模式,只有當thread模式下才能除錯多執行緒 斷點設定步驟 1.在斷點上右鍵 2.選擇thread,然後點done 建議選擇thread後點選make default把此模式設定為預設模式 3.之後就可以在debug模式按自己的想法除錯多執行緒了 4.有時可能想在指定的情況下...

2 2多執行緒 多執行緒間是如何進行通訊的

系統要實現某個全域性功能必定要需要各個子模組之間的協調和配合,就像乙個團隊要完成某項任務的時候需要團隊各個成員之間密切配合一樣。而對於系統中的各個子執行緒來說,如果要完成乙個系統功能,同樣需要各個執行緒的配合,這樣就少不了執行緒之間的通訊與協作。常見的執行緒之間通訊方式有如下幾種 1 wait 和n...