我在一台机器上创建了RabbitMQ集群。该集群包含两个节点:" rabbit1 @machineName.local:6001"和" rabbit2@machineName.local:6002"。 但是当HostName为" machineName.local"时,我无法创建工厂连接。 (不是localhost)。
这是我的代码:
ConnectionFactory factory = new ConnectionFactory();
factory.UserName = "guest";
factory.Password = "guest";
factory.HostName = "localhost";
factory.VirtualHost = "/";
factory.Port = 6001;
Byte[] body = Encoding.UTF8.GetBytes("My first msg to cluster!");
using(var connection = factory.CreateConnection())
{
using(var channel = connection.CreateModel())
{
channel.QueueDeclare("Tests", false, false, false, null);
channel.BasicPublish("", "Tests", true, null, body);
}
}
我不了解如何创建与群集的连接而不是群集中的特定节点的版本。
答案 0 :(得分:0)
您可以在rabbitmq群集之前添加tcp代理。客户端连接代理和代理连接到群集的每个节点。