0
我正在爲EasyNetQ發佈封裝以將消息發佈到RabbitMQ。有大量需要發佈的消息。我是否應該使用模式來使用IBus發佈消息,還是應該將IBus類型var聲明爲類級別static var,並在應用程序結束時進行處理?EasyNetQ消息發佈程序模式
using (IBus bus = RabbitHutch.CreateBus(rabbitMQConnectionString))
{
bus.publish("ss");
}
感謝
這主要是一個基於意見的問題,我會說沒有正確的答案,並取決於上下文。 爲什麼不讓應用程序選擇是創建一個靜態總線還是實例化呢? –
有大量需要發佈的消息。我主要關心多次創建和部署IBus實例。另一方面,如果我將IBus類型var作爲靜態類成員,我擔心併發問題。我可以應用鎖定但會影響性能 –
爲什麼併發性會讓您擔心消息隊列到位?來自隊列的消息僅由訂閱應用程序出隊一次。鎖定總線實例不會阻止應用程序多次發送相同的消息。 –