1 回答

TA貢獻(xiàn)1795條經(jīng)驗(yàn) 獲得超7個(gè)贊
有兩種方法可以解決此問(wèn)題。
第一種方法是最明顯的 - 您需要使用虛擬主機(jī)。
從文檔中:
虛擬主機(jī)提供資源的邏輯分組和分離。物理資源的分離不是虛擬主機(jī)的目標(biāo),應(yīng)被視為實(shí)現(xiàn)細(xì)節(jié)。
在您的 RMQ 實(shí)例中創(chuàng)建兩個(gè)虛擬主機(jī),名為test
和prod
,您在 MassTransit 端唯一需要做的就是更改 RMQ 連接字符串:
Bus.Factory.CreateUsingRabbitMq(cfg =>
{
? ? cfg.Host(new Uri("rabbitmq://localhost/test"), host =>
? ? {
? ? ? ? host.Username("username");
? ? ? ? host.Password("password");
? ? });
});?
所以您將用于rabbitmq://localhost/prod生產(chǎn)。當(dāng)然,這些值不應(yīng)該是硬編碼的,而是來(lái)自配置。
我相信虛擬主機(jī)完全可以滿(mǎn)足您的需求。
如果你確實(shí)需要完全獨(dú)立地運(yùn)行測(cè)試環(huán)境,你可以在 Docker 容器中運(yùn)行它。當(dāng)您需要一個(gè)干凈的環(huán)境時(shí),此選項(xiàng)將使您能夠殺死整個(gè)事情并從頭開(kāi)始。您可以輕松地重新映射默認(rèn)端口,以避免與生產(chǎn)實(shí)例發(fā)生沖突:
docker run -d --name test-rmq -p 5673:5672 -p 8080:15672 rabbitmq:3-management
如果您運(yùn)行上面的命令,則可以通過(guò) AMQP on 訪(fǎng)問(wèn)新實(shí)例localhost:5673,并且管理插件將打開(kāi)http://localhost:8080
- 1 回答
- 0 關(guān)注
- 152 瀏覽
添加回答
舉報(bào)