Подключение к нескольким хостам RabbitMQ в C # - PullRequest
0 голосов
/ 27 июня 2019

У меня есть приложение .NET Core, и я пытаюсь подключиться к нескольким хостам RabbitMQ.Ниже приведен пример кода, но при запуске я получаю BrokerUnreachableException.

var hosts = rabbitConnectionString.Split(',').Select(p => p.Trim()).ToList();

var connection = new ConnectionFactory().CreateConnection(hosts);

Где мой rabbitConnectionString выглядит как amqp://user:password@server:5672/FileHandler,amqp://user:password@server:5662/FileHandler

Возможно ли подключиться к нескольким хостам?

Обновление: ниже мой обновленный код.Я по-прежнему получаю сообщение об ошибке, что хост недоступен

var hosts = "dev.mydomain.com" //I have also tried "ampq://dev.mydomain.com

var connection = new ConnectionFactory()
{
  Port = 5662,
  UserName = "FileHandler",
  Password = "FileHandler",
  AutomaticRecoveryEnabled = true,
  NetworkRecoveryInterval = new TimeSpan(2000),
  VirtualHost = "FileHandler"
}
.CreateConnection(hosts);

Требуется ли в списке хостов IP-адрес

1 Ответ

0 голосов
/ 27 июня 2019

Вы можете указать несколько хостов в качестве входных данных для вашей фабрики соединений.Клиент RabbitMQ повторяет попытку с указанными хостами, пока не будет установлено соединение.

# List of hosts
var addresses = Array(new Address("IP address 1"), new Address("IP address 2"))

# Connection factort object.
var factory = new ConnectionFactory()

# Setting connection factory arguments.
factory.setPort(5672)
factory.setUsername("")
factory.setPassword("")
factory.setAutomaticRecoveryEnabled(true)
factory.setNetworkRecoveryInterval(2000)

# Passing the list of hosts to get the connection.
var connection = factory.CreateConnection(hosts)

Ссылка:

  1. https://www.rabbitmq.com/dotnet-api-guide.html#connecting
  2. Как использовать RabbitMQсписок параметров соединения хостов
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...